:root{font-family:Arial,Helvetica,sans-serif;color:#172033;background:#f5f7fa;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:#f5f7fa}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:220px;padding:15px 10px;display:flex;flex-direction:column;color:#fff;background:#111827;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding:10px;margin-bottom:12px}.brand-icon{display:grid;place-items:center;color:#fff}.brand div{display:flex;flex-direction:column}.brand strong{font-size:20px;line-height:1.2}.brand small{display:none}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar nav button,.logout{width:100%;border:0;border-radius:8px;background:transparent;color:#cbd5e1;padding:10px 11px;display:flex;align-items:center;gap:10px;text-align:left;font-size:13px}.sidebar nav button:hover,.sidebar nav button.active,.logout:hover{background:#374151;color:#fff}.logout{margin-top:auto}.mobile-close,.menu-btn{display:none!important}main{width:calc(100% - 220px);min-height:100vh;margin-left:220px;padding:20px}header{display:flex;align-items:center;gap:14px;margin-bottom:18px}header h1{margin:0;font-size:24px}header p{margin:4px 0 0;color:#718096;font-size:13px}.refresh{margin-left:auto;border:0;border-radius:8px;padding:9px 13px;display:flex;align-items:center;gap:7px;color:#374151;background:#eef1f4;font-size:13px;font-weight:600}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:10px}.stats.secondary{margin-bottom:13px}.stat,.account-card,.debt-card{background:#fff;border:1px solid #edf0f3;border-radius:12px;padding:15px}.stat>span{display:block;color:#718096;font-size:12px}.stat strong{display:block;margin-top:7px;font-size:21px}.stat small{color:#718096}.blue{color:#2563eb}.green{color:#059669}.red{color:#dc2626}.orange{color:#d97706}.panel{margin-top:13px;padding:15px;background:#fff;border:1px solid #edf0f3;border-radius:12px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panel h2{margin:0;font-size:16px}.primary{border:0;border-radius:8px;padding:9px 13px;display:flex;align-items:center;justify-content:center;gap:6px;color:#fff;background:#111827;font-size:13px;font-weight:600}.primary:hover{background:#374151}.text-btn{border:0;background:transparent;color:#2563eb;font-size:12px}.item-grid,.loan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.account-card{position:relative;display:flex;align-items:center;gap:13px}.account-card h3,.debt-card h3{margin:3px 0 8px;font-size:14px}.account-card small,.debt-card small{color:#718096;font-size:11px}.account-card strong{font-size:17px}.round{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;flex:none}.blue-bg{background:#dbeafe;color:#2563eb}.orange-bg{background:#fef3c7;color:#d97706}.green-bg{background:#d1fae5;color:#059669}.red-bg{background:#fee2e2;color:#dc2626}.danger-icon,.icon{border:0;border-radius:7px;padding:6px;display:grid;place-items:center;color:#9ca3af;background:transparent}.danger-icon:hover{color:#b91c1c;background:#fee2e2}.account-card>.danger-icon{position:absolute;top:8px;right:8px}.credit-card{min-height:220px;padding:18px;border-radius:12px;display:flex;flex-direction:column;color:#fff;background:#111827}.credit-card:nth-child(2n){background:#374151}.card-top{display:flex;align-items:flex-start;justify-content:space-between}.card-top h3{margin:5px 0 23px}.credit-card>span,.credit-card>small,.card-top small{font-size:10px;opacity:.8}.credit-card>strong{margin:5px 0 14px;font-size:22px}.progress{height:7px;margin:9px 0;overflow:hidden;border-radius:10px;background:#e5e7eb}.progress i{display:block;height:100%;background:#111827}.credit-card .progress{background:#ffffff40}.credit-card .progress i{background:#fff}.card-actions{display:flex;gap:8px;margin-top:auto}.card-actions button{border:1px solid rgba(255,255,255,.4);border-radius:8px;padding:7px 10px;color:#fff;background:#ffffff1a;font-size:11px}.card-actions .danger-icon{margin-left:auto}.list>div,.due-list>div,.timeline>div{display:flex;align-items:center;gap:13px;padding:10px 2px;border-bottom:1px solid #e5e7eb}.list>div:last-child,.due-list>div:last-child,.timeline>div:last-child{border:0}.list div>div,.due-list div>div,.timeline div>div{display:flex;flex-direction:column;gap:4px}.list b,.due-list b,.timeline b{margin-left:auto;font-size:13px}.list small,.due-list small,.timeline small{color:#718096;font-size:11px}.date-box{width:43px;height:43px;padding:5px;border-radius:8px;display:grid;place-items:center;color:#2563eb;background:#eff6ff;font-weight:700;line-height:12px}.date-box small{color:#2563eb!important;font-size:9px}.debt-head{display:flex;align-items:center;gap:10px;margin-bottom:16px}.debt-head .danger-icon{margin-left:auto}.debt-card>span{color:#718096;font-size:11px}.debt-card>strong{display:block;margin:5px 0 14px;font-size:20px}.meta{display:flex;justify-content:space-between;color:#718096;font-size:10px}.outline{width:100%;margin-top:14px;border:0;border-radius:8px;padding:8px;color:#374151;background:#eef1f4;font-size:11px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:10px 8px;border-bottom:1px solid #e5e7eb;text-align:left;white-space:nowrap}th{color:#718096;font-size:11px}.badge{display:inline-block;padding:4px 7px;border-radius:20px;background:#f1f5f9;font-size:11px}.empty{min-height:120px;padding:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:#9ca3af;font-size:12px;grid-column:1/-1}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;padding:22px;display:flex;align-items:center;justify-content:center;overflow:auto;background:#0f172a7a;z-index:50}.modal{width:100%;max-width:500px;max-height:calc(100vh - 44px);overflow:auto;background:#fff;border-radius:15px;box-shadow:0 20px 60px #00000038}.modal-head{height:56px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7eb}.modal-head h2{margin:0;font-size:17px}.form-grid{padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:11px}.form-grid label{min-width:0;display:flex;flex-direction:column;gap:5px}.form-grid label span{color:#667085;font-size:12px}.form-grid input,.form-grid select,.report-picker input,.login-card input{width:100%;border:1px solid #d9dee7;border-radius:8px;padding:9px 10px;outline:none;background:#fff;font-size:13px}.form-grid input:focus,.form-grid select:focus,.login-card input:focus{border-color:#9ca3af}.full{grid-column:1/-1}.form-actions{margin-top:4px;padding-top:13px;display:flex;justify-content:flex-end;border-top:1px solid #edf0f3}.form-actions .primary{min-width:100px;background:#059669}.toast{position:fixed;right:22px;bottom:22px;padding:12px 16px;border-radius:10px;color:#fff;background:#111827;box-shadow:0 12px 35px #0f172a4d;z-index:80;font-size:12px}.timeline .overdue .date-box{color:#dc2626;background:#fee2e2}.bars>div{margin:15px 0}.bars>div>div:first-child{display:flex;justify-content:space-between;font-size:12px}.report-picker{display:flex;justify-content:flex-end;margin-bottom:13px}.report-picker label{color:#718096;font-size:11px}.report-picker input{width:auto;margin-left:8px}.settings-list>div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #edf0f3;font-size:12px}.settings-list span{color:#718096}.notice{margin:16px;padding:12px;border:1px solid #fef3c7;border-radius:8px;color:#92400e;background:#fffbeb;font-size:12px}.center,.login-page{min-height:100vh;display:grid;place-items:center}.spinner{width:34px;height:34px;border:3px solid #d1d5db;border-top-color:#111827;border-radius:50%;animation:spin .8s linear infinite}.login-page{padding:20px;background:#f5f7fa}.login-card{width:min(410px,100%);padding:32px;background:#fff;border:1px solid #edf0f3;border-radius:15px;box-shadow:0 20px 60px #0000001a}.login-logo{width:50px;height:50px;display:grid;place-items:center;border-radius:12px;color:#fff;background:#111827}.login-card h1{margin:20px 0 7px;font-size:22px}.login-card>p{margin:0 0 23px;color:#718096;font-size:12px}.login-card form{display:flex;flex-direction:column;gap:9px}.login-card label{font-size:11px;font-weight:600}.login-card button{margin-top:7px;border:0;border-radius:8px;padding:11px;color:#fff;background:#111827;font-weight:600}.login-error{margin-top:12px;padding:10px;border-radius:8px;color:#b91c1c;background:#fee2e2;font-size:11px}@media(max-width:700px){.sidebar{top:0;right:0;bottom:auto;width:100%;height:auto;padding:7px;transform:none}.brand{padding:5px 7px 8px;margin:0}.brand strong{font-size:18px}.brand-icon,.mobile-close,.logout{display:none!important}.sidebar nav{flex-direction:row;gap:3px;overflow-x:auto}.sidebar nav button{width:auto;flex:none;padding:8px 9px;white-space:nowrap;font-size:12px}.sidebar nav button svg{display:none}main{width:100%;margin-left:0;padding:112px 12px 30px}.menu-btn,.backdrop{display:none!important}header{margin-bottom:14px}header h1{font-size:21px}header p{display:block;font-size:12px}.refresh{padding:8px;font-size:0}.stats{grid-template-columns:1fr 1fr}.stat{padding:13px}.stat strong{font-size:17px}.panel{padding:13px}.item-grid,.loan-grid,.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.modal-bg{align-items:flex-end;padding:0}.modal{max-width:none;max-height:88vh;border-radius:15px 15px 0 0}.table-wrap{margin:0 -13px;padding:0 13px}}.auth-card{width:min(430px,calc(100vw - 28px))}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 16px;padding:4px;background:#eef2f7;border-radius:12px}.auth-tabs button{border:0;background:transparent;color:#64748b;border-radius:9px;padding:9px;font-weight:700;cursor:pointer}.auth-tabs button.active{background:#fff;color:#0f172a;box-shadow:0 2px 8px #0f172a12}.forgot-pin{display:block;margin:12px auto 0;border:0;background:transparent;color:#047857;font-weight:700;cursor:pointer}.auth-info{margin-top:12px;padding:10px 12px;border-radius:9px;background:#ecfdf5;color:#047857;font-size:13px}.auth-verifying{min-height:90px}.sidebar nav .admin-nav{margin-top:8px;border-top:1px solid #ffffff18;border-radius:0 0 8px 8px;padding-top:12px}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-toolbar form{display:flex;gap:8px;flex:1;max-width:520px}.admin-toolbar input{flex:1;min-width:180px;border:1px solid #d9e0e8;border-radius:9px;padding:9px 11px}.admin-toolbar>span{color:#64748b;font-size:13px}.role-badge,.user-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700}.role-badge.admin{background:#ede9fe;color:#6d28d9}.role-badge.user{background:#e0f2fe;color:#0369a1}.user-status.active{background:#dcfce7;color:#15803d}.user-status.unverified{background:#fef3c7;color:#b45309}.user-status.locked{background:#fee2e2;color:#b91c1c}.admin-actions{display:flex;gap:5px}.admin-actions button{display:grid;place-items:center;width:31px;height:31px;border:1px solid #dbe2ea;border-radius:8px;background:#fff;color:#475569;cursor:pointer}.admin-actions button:hover{border-color:#0f766e;color:#0f766e}.admin-loading{min-height:110px}.settings-email{display:flex;align-items:center;gap:8px}.settings-email em{padding:3px 7px;border-radius:999px;font-size:11px;font-style:normal}.settings-email em.verified{color:#15803d;background:#dcfce7}.settings-email em.unverified{color:#b45309;background:#fef3c7}.settings-actions{display:flex;justify-content:flex-end;gap:8px}.settings-actions .outline{width:auto;margin-top:12px;padding:9px 13px;font-weight:700}@media(max-width:700px){.admin-toolbar{align-items:stretch;flex-direction:column}.admin-toolbar form{max-width:none}.admin-users-table{overflow-x:auto}.admin-users-table table{min-width:900px}}.report-page{--report-border:#e8edf3}.report-toolbar{min-height:72px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#111827,#273449);color:#fff;border-radius:12px;margin-bottom:13px}.report-toolbar>div{display:flex;flex-direction:column;gap:5px}.report-toolbar strong{font-size:17px;text-transform:capitalize}.report-toolbar span{font-size:12px;color:#cbd5e1}.report-toolbar label{display:flex;align-items:center;gap:10px;font-size:11px;color:#cbd5e1}.report-toolbar input{border:1px solid #475569;border-radius:8px;padding:8px 10px;background:#fff;color:#172033;outline:none}.report-stats .stat{position:relative;overflow:hidden}.report-stats .stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#cbd5e1}.report-stats .stat:has(.green):before{background:#059669}.report-stats .stat:has(.red):before{background:#dc2626}.report-stats .stat:has(.blue):before{background:#2563eb}.report-stats .stat:has(.orange):before{background:#d97706}.report-stats .stat small{display:block;margin-top:7px;font-size:10px}.report-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:13px}.report-grid .panel{min-width:0}.chart-summary{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:15px}.chart-summary>div:first-child{display:flex;flex-direction:column;gap:4px}.chart-summary span{color:#718096;font-size:11px}.chart-summary strong{font-size:18px}.chart-legend{display:flex;align-items:center;gap:6px;color:#718096;font-size:10px}.chart-legend i{width:8px;height:8px;border-radius:50%;background:#2563eb}.daily-chart{height:250px;position:relative;padding:6px 0 25px 54px}.chart-grid{position:absolute;top:6px;right:0;bottom:25px;left:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.chart-grid:before,.chart-grid:after{content:"";position:absolute;left:54px;right:0;border-top:1px dashed #e5e7eb}.chart-grid:before{top:0}.chart-grid:after{top:50%}.chart-grid span{font-size:9px;color:#94a3b8;transform:translateY(-5px)}.chart-grid span:last-child{transform:translateY(5px)}.day-bars{height:100%;display:flex;align-items:flex-end;gap:3px;position:relative;border-bottom:1px solid #e5e7eb;z-index:1}.day-column{height:100%;min-width:2px;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.day-bar{width:100%;max-width:15px;border-radius:4px 4px 1px 1px;background:#dbeafe;transition:.2s}.day-bar.active{background:linear-gradient(180deg,#3b82f6,#2563eb)}.day-column:hover .day-bar.active{background:#1d4ed8}.day-column small{height:17px;padding-top:5px;color:#94a3b8;font-size:8px}.category-layout{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.donut{width:156px;height:156px;border-radius:50%;display:grid;place-items:center;position:relative}.donut:after{content:"";position:absolute;width:96px;height:96px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #f1f5f9}.donut>div{position:relative;z-index:1;display:flex;flex-direction:column;text-align:center}.donut strong{font-size:24px}.donut span{color:#718096;font-size:10px}.category-legend{width:100%;display:flex;flex-direction:column;gap:9px}.category-legend>div{display:grid;grid-template-columns:9px minmax(70px,1fr) 35px auto;align-items:center;gap:7px;font-size:11px}.category-legend i{width:8px;height:8px;border-radius:3px}.category-legend b{text-align:right}.category-legend small{min-width:82px;text-align:right;color:#718096}.insight-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.insight-grid>div{padding:13px;border:1px solid var(--report-border);border-radius:10px;background:#f8fafc;display:flex;flex-direction:column;gap:6px}.insight-grid span{color:#718096;font-size:10px}.insight-grid strong{font-size:15px}.insight-grid small{color:#64748b;font-size:10px}@media(max-width:1050px){.report-grid{grid-template-columns:1fr}.category-layout{min-height:0;flex-direction:row}.category-legend{max-width:420px}.insight-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.report-toolbar{align-items:flex-start;flex-direction:column}.report-toolbar label{width:100%;justify-content:space-between}.report-toolbar input{flex:1}.report-stats{grid-template-columns:1fr 1fr}.daily-chart{height:220px;padding-left:43px}.chart-grid:before,.chart-grid:after{left:43px}.category-layout{flex-direction:column}.insight-grid{grid-template-columns:1fr 1fr}.category-legend>div{grid-template-columns:9px minmax(60px,1fr) 32px auto}}@media(max-width:430px){.report-stats,.insight-grid{grid-template-columns:1fr}.category-legend small{min-width:72px}.daily-chart{height:190px}}.card-summary{margin-bottom:0}.card-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr))}.finance-card{min-height:315px}.card-schedule{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:4px 0 8px}.card-schedule>span{padding:8px;border:1px solid rgba(255,255,255,.18);border-radius:8px;display:flex;flex-direction:column;gap:4px}.card-schedule small{font-size:9px;opacity:.72}.card-schedule b{font-size:12px}.card-alert,.card-installment{margin-top:5px;padding:7px 9px;border-radius:7px;font-size:10px}.card-alert{color:#fef3c7;background:#d9770647}.card-installment{color:#dbeafe;background:#2563eb40}.quick-actions{flex-wrap:wrap;margin-top:10px}.quick-actions button{flex:1;min-width:72px;padding:7px 8px}.quick-actions .danger-icon{flex:0 0 auto;min-width:auto}.statement-list{display:flex;flex-direction:column}.statement-list>div{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:18px;padding:12px 2px;border-bottom:1px solid #edf0f3}.statement-list>div:last-child{border-bottom:0}.statement-list>div>div{display:flex;flex-direction:column;gap:4px}.statement-list small,.statement-list span{color:#718096;font-size:11px}.statement-list .outline{width:auto;margin:0;padding:8px 12px}.resolution-history{display:flex;flex-direction:column}.resolution-history>div{display:grid;grid-template-columns:10px minmax(170px,1fr) auto auto;align-items:center;gap:11px;padding:10px 2px;border-bottom:1px solid #edf0f3}.resolution-history>div:last-child{border:0}.resolution-history>div>div{display:flex;flex-direction:column;gap:4px}.resolution-history small{color:#718096;font-size:10px}.resolution-history b{font-size:12px}.resolution-history em{color:#d97706;font-size:10px;font-style:normal}.resolution-dot{width:8px;height:8px;border-radius:50%;background:#64748b}.resolution-dot.full{background:#059669}.resolution-dot.partial{background:#2563eb}.resolution-dot.rollover{background:#d97706}.resolution-dot.installment{background:#7c3aed}.resolution-form{padding:16px;display:flex;flex-direction:column;gap:13px}.resolution-field{display:flex;flex-direction:column;gap:5px}.resolution-field>span{color:#667085;font-size:11px}.resolution-field input,.resolution-field select{width:100%;border:1px solid #d9dee7;border-radius:8px;padding:9px 10px;outline:none;background:#fff;font-size:13px}.resolution-field input:focus,.resolution-field select:focus{border-color:#9ca3af}.resolution-methods{display:grid;grid-template-columns:1fr 1fr;gap:7px}.resolution-methods button{border:1px solid #d9dee7;border-radius:8px;padding:9px 8px;background:#f8fafc;color:#475569;font-size:11px}.resolution-methods button.active{border-color:#111827;background:#111827;color:#fff;font-weight:600}.resolution-balance{padding:11px 12px;display:flex;align-items:center;justify-content:space-between;border-radius:8px;background:#f1f5f9}.resolution-balance span{color:#64748b;font-size:11px}.resolution-balance strong{font-size:15px}.resolution-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}.resolution-preview{padding:11px 12px;border:1px solid #fde68a;border-radius:8px;background:#fffbeb;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px}.resolution-preview span{color:#92400e;font-size:11px}.resolution-preview strong{color:#d97706}.resolution-preview small{grid-column:1/-1;color:#a16207;font-size:10px}.resolution-actions{padding-top:13px;display:flex;justify-content:flex-end;border-top:1px solid #edf0f3}.resolution-actions .primary{background:#059669}.payment-hint{margin:16px 16px 0;padding:10px 12px;border-radius:8px;background:#eff6ff;color:#1e40af;font-size:11px;line-height:1.5}.empty-action{padding:26px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.empty-action p{margin:0;font-weight:700}.empty-action span{color:#718096;font-size:12px;line-height:1.5}.empty-action .primary{margin-top:5px}@media(max-width:700px){.card-grid{grid-template-columns:1fr}.finance-card{min-height:300px}.statement-list>div{grid-template-columns:1fr auto;gap:9px}.statement-list .outline{grid-column:1/-1;width:100%}.resolution-history>div{grid-template-columns:10px minmax(120px,1fr) auto}.resolution-history em{grid-column:2/-1}.resolution-fields{grid-template-columns:1fr}.resolution-methods{grid-template-columns:1fr 1fr}}.bank-card{position:relative;isolation:isolate;overflow:hidden;background-size:180% 180%;animation:bank-gradient 12s ease-in-out infinite;box-shadow:0 14px 32px #0f172a2e;transition:transform .28s ease,box-shadow .28s ease}.bank-card:hover{transform:translateY(-3px);box-shadow:0 20px 42px #0f172a40}.bank-card>*{position:relative;z-index:2}.bank-card:before{content:"";position:absolute;z-index:0;width:230px;height:230px;right:-75px;top:-115px;border:1px solid rgba(255,255,255,.2);border-radius:42% 58% 64% 36%;background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.2),transparent 62%);animation:bank-orbit 9s ease-in-out infinite alternate}.bank-card:after{content:attr(data-bank);position:absolute;z-index:0;right:18px;bottom:30px;color:#fff1;font-size:76px;font-weight:800;letter-spacing:-6px;line-height:1;transform:skew(-10deg);pointer-events:none}.bank-card .card-schedule>span,.bank-card .quick-actions button{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.bank-card .quick-actions button{background:#0f172a3d}.bank-card.bank-mb{background-image:radial-gradient(circle at 78% 22%,rgba(34,94,190,.5),transparent 28%),linear-gradient(120deg,#07152d,#123b7a 58%,#05275c)}.bank-card.bank-techcombank{background-image:radial-gradient(circle at 82% 18%,rgba(255,255,255,.2),transparent 23%),linear-gradient(125deg,#7f0711,#d71920 58%,#76101b)}.bank-card.bank-vpbank{background-image:radial-gradient(circle at 80% 15%,rgba(245,158,11,.35),transparent 25%),linear-gradient(125deg,#064e3b,#059669 55%,#84cc16)}.bank-card.bank-vietcombank{background-image:linear-gradient(135deg,#033f36,#007c58 55%,#57b847)}.bank-card.bank-vietinbank{background-image:radial-gradient(circle at 86% 16%,rgba(239,68,68,.8),transparent 18%),linear-gradient(125deg,#003b70,#0877bd 60%,#0e4f85)}.bank-card.bank-bidv{background-image:radial-gradient(circle at 80% 20%,rgba(238,47,61,.7),transparent 15%),linear-gradient(125deg,#004b76,#007d9c 55%,#005c87)}.bank-card.bank-sacombank{background-image:radial-gradient(circle at 82% 18%,rgba(250,204,21,.7),transparent 17%),linear-gradient(125deg,#003b7a,#0070b8 60%,#004d8c)}.bank-card.bank-tpbank{background-image:radial-gradient(circle at 80% 18%,rgba(249,115,22,.65),transparent 18%),linear-gradient(125deg,#3b0764,#7e22ce 58%,#581c87)}.bank-card.bank-vib{background-image:radial-gradient(circle at 82% 18%,rgba(249,115,22,.7),transparent 20%),linear-gradient(125deg,#06346b,#0759a6 60%,#032d62)}.bank-card.bank-acb{background-image:linear-gradient(125deg,#002b5c,#0066b3 58%,#008bd2)}.bank-card.bank-hsbc{background-image:radial-gradient(circle at 82% 18%,rgba(255,255,255,.22),transparent 22%),linear-gradient(125deg,#3f0b0d,#db0011 58%,#78040a)}.bank-card.bank-default{background-image:radial-gradient(circle at 80% 18%,rgba(99,102,241,.32),transparent 24%),linear-gradient(125deg,#0f172a,#26344a 58%,#111827)}@keyframes bank-gradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes bank-orbit{0%{transform:translateZ(0) rotate(0)}to{transform:translate3d(-18px,22px,0) rotate(18deg)}}@media(prefers-reduced-motion:reduce){.bank-card,.bank-card:before{animation:none}.bank-card:hover{transform:none}}@media(max-width:700px){.bank-card:after{font-size:58px;bottom:40px}}.bank-card.bank-cake{background-image:radial-gradient(circle at 83% 18%,rgba(255,235,59,.65),transparent 17%),radial-gradient(circle at 12% 80%,rgba(34,211,238,.42),transparent 28%),linear-gradient(125deg,#4c1d95,#7c3aed 48%,#db2777 78%,#f59e0b)}.bank-card.bank-digimi{background-image:radial-gradient(circle at 82% 16%,rgba(239,68,68,.6),transparent 18%),linear-gradient(125deg,#071a3d,#123f82 55%,#255db5)}.bank-card.bank-ocb{background-image:radial-gradient(circle at 82% 18%,rgba(245,158,11,.72),transparent 18%),linear-gradient(125deg,#064e3b,#087f5b 57%,#0c9b70)}.bank-logo{min-width:76px;min-height:38px;display:flex;align-items:center;justify-content:flex-end;gap:5px;color:#fff;text-align:left;text-shadow:0 1px 8px rgba(0,0,0,.16)}.bank-logo>i{font-style:normal;font-size:21px;line-height:1}.bank-logo>span{display:flex;flex-direction:column;align-items:flex-start}.bank-logo b{font-size:18px;line-height:1;font-weight:800;letter-spacing:-.5px}.bank-logo small{margin-top:3px;font-size:6px!important;line-height:1;opacity:.82!important;text-transform:none}.logo-mb>i{color:#ef3340;font-size:24px}.logo-mb b{font-size:21px;letter-spacing:-1px}.logo-cake b{font-size:21px;font-weight:800;letter-spacing:-1px}.logo-cake>i{display:none}.logo-digimi b{font-size:19px;font-weight:700;letter-spacing:-.7px}.logo-digimi b:after{content:"";display:inline-block;width:5px;height:5px;margin-left:2px;border-radius:50%;background:#ef4444;vertical-align:top}.logo-digimi>i{display:none}.logo-ocb>i{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;color:#f5b335;border:2px solid #f5b335;font-size:11px}.logo-ocb b{font-size:20px}.logo-sacombank{gap:6px}.logo-sacombank>i{width:24px;height:24px;display:grid;place-items:center;border:2px solid #f4cf54;border-radius:50%;color:#f4cf54;font-size:15px;font-weight:800}.logo-sacombank b{color:#f4cf54;font-size:13px;letter-spacing:.2px}.logo-default>i{display:none}@media(max-width:430px){.bank-logo{min-width:62px}.bank-logo b{font-size:15px}.logo-sacombank b{font-size:11px}}.credit-card.bank-card.bank-mb{background-color:#061a3a;background-image:radial-gradient(circle at 88% 12%,rgba(38,113,225,.62),transparent 29%),linear-gradient(118deg,#041126,#082b62 53%,#064aa0)}.credit-card.bank-card.bank-sacombank{background-color:#075daf;background-image:radial-gradient(circle at 88% 12%,rgba(255,214,74,.9),transparent 16%),linear-gradient(145deg,transparent 0 62%,rgba(255,210,54,.22) 62% 65%,transparent 65%),linear-gradient(120deg,#063a81,#0873c9 56%,#00a0d7)}.credit-card.bank-card.bank-ocb{background-color:#08734f;background-image:radial-gradient(circle at 84% 15%,rgba(255,181,34,.82),transparent 18%),linear-gradient(145deg,transparent 0 63%,rgba(255,190,46,.18) 63% 66%,transparent 66%),linear-gradient(120deg,#043c2c,#087658 54%,#11a477)}.credit-card.bank-card.bank-default{background-color:#070b12;background-image:radial-gradient(circle at 82% 18%,rgba(100,116,139,.2),transparent 24%),linear-gradient(125deg,#030508,#111827 58%,#05080e)}.logo-ocb>i{position:relative;width:25px;height:25px;border:0;color:transparent;background:conic-gradient(from -25deg,#f5a623 0,#f5a623 34%,#8abf3d 34%,#8abf3d 67%,#007f5f 67%,#007f5f);box-shadow:0 0 0 2px #ffffff2e}.logo-ocb>i:after{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border-radius:50%;background:#fff}.logo-ocb b{font-size:21px;letter-spacing:-.7px}.logo-sacombank>i{background:#f4cf54;color:#07519b;border-color:#f4cf54;box-shadow:0 0 16px #f4cf5447}.logo-sacombank b{font-size:14px}.logo-default b{font-size:16px;letter-spacing:1.5px;color:#e2e8f0}.bank-default:after{content:"CARD"}html{font-size:16px}body{font-size:14px;line-height:1.45}button,input,select{font-size:14px;line-height:1.35}.sidebar{padding:13px 9px}.brand{padding:8px 9px;margin-bottom:8px}.brand strong{font-size:20px}.sidebar nav{gap:1px}.sidebar nav button,.logout{padding:9px 10px;font-size:14px}.sidebar nav button svg,.logout svg{width:18px;height:18px}main{padding:18px}header{margin-bottom:14px}header h1{font-size:26px;line-height:1.25}header p{font-size:14px}.refresh{padding:8px 12px;font-size:13px}.stats{gap:9px;margin-bottom:9px}.stats.secondary{margin-bottom:10px}.stat{padding:14px}.stat>span{font-size:13px}.stat strong{font-size:22px;line-height:1.25;margin-top:5px}.stat small{font-size:11.5px}.panel{margin-top:10px;padding:14px}.panel-head{margin-bottom:10px}.panel h2{font-size:17px}.primary{padding:8px 12px;font-size:13.5px}.text-btn{font-size:13px}.item-grid,.loan-grid{gap:9px}.account-card,.debt-card{padding:14px}.account-card h3,.debt-card h3{font-size:15px;margin:2px 0 6px}.account-card small,.debt-card small{font-size:11.5px}.account-card strong{font-size:18px}.credit-card{padding:16px}.credit-card>span,.credit-card>small,.card-top small{font-size:11.5px}.credit-card>strong{font-size:23px;margin:4px 0 10px}.card-top h3{font-size:16px;margin:4px 0 16px}.progress{margin:7px 0}.card-actions{gap:6px}.card-actions button{padding:7px 9px;font-size:12px}.list>div,.due-list>div,.timeline>div{gap:11px;padding:9px 2px}.list b,.due-list b,.timeline b{font-size:13.5px}.list small,.due-list small,.timeline small{font-size:11.5px}.date-box{width:42px;height:42px}.date-box small{font-size:10px}.debt-card>span{font-size:12px}.debt-card>strong{font-size:21px;margin:4px 0 11px}.meta{font-size:11px}.outline{margin-top:10px;padding:8px;font-size:12px}table{font-size:13.5px}th,td{padding:9px 8px}th{font-size:11px}.badge{font-size:11.5px}.empty{min-height:90px;padding:20px;font-size:13px}.modal-head{height:52px}.modal-head h2{font-size:18px}.form-grid{padding:14px;gap:10px}.form-grid label{gap:4px}.form-grid label span{font-size:12.5px}.form-grid input,.form-grid select,.report-picker input,.login-card input{padding:9px 10px;font-size:14px}.form-actions{padding-top:11px}.toast{font-size:13px}.report-picker{margin-bottom:10px}.report-picker label{font-size:12px}.settings-list>div{padding:10px 0;font-size:13px}.notice{margin:13px;padding:11px;font-size:12.5px}.login-card{padding:28px}.login-card h1{font-size:23px;margin:16px 0 6px}.login-card>p{font-size:13px;margin-bottom:18px}.login-card label{font-size:12.5px}.finance-card{min-height:298px}.card-schedule{gap:6px;margin:3px 0 6px}.card-schedule>span{padding:7px}.card-schedule small{font-size:10.5px}.card-schedule b{font-size:13px}.card-alert,.card-installment{padding:6px 8px;font-size:11.5px}.quick-actions{margin-top:8px;gap:6px}.quick-actions button{padding:7px 8px;font-size:12.5px}.statement-list>div{gap:12px;padding:9px 2px}.statement-list small,.statement-list span{font-size:12px}.resolution-history>div{padding:9px 2px}.resolution-history small{font-size:11.5px}.resolution-history b{font-size:13px}.resolution-history em{font-size:11px}.resolution-form{padding:14px;gap:10px}.resolution-field{gap:4px}.resolution-field>span{font-size:12.5px}.resolution-field input,.resolution-field select{padding:9px 10px;font-size:14px}.resolution-methods{gap:6px}.resolution-methods button{padding:8px;font-size:12.5px}.resolution-balance{padding:10px 11px}.resolution-balance span{font-size:12.5px}.resolution-balance strong{font-size:16px}.resolution-fields{gap:9px}.resolution-preview{padding:10px 11px}.resolution-preview span{font-size:12px}.resolution-preview small{font-size:11px}.payment-hint{font-size:12.5px}.empty-action{padding:20px}.empty-action span{font-size:13px}.report-toolbar{min-height:66px;padding:12px 14px;margin-bottom:10px}.report-toolbar strong{font-size:18px}.report-toolbar span{font-size:13px}.report-toolbar label{font-size:12px}.report-stats .stat small{font-size:11px;margin-top:5px}.report-grid{gap:10px}.chart-summary{margin-bottom:10px}.chart-summary span{font-size:12px}.chart-summary strong{font-size:19px}.chart-legend{font-size:11px}.chart-grid span{font-size:10px}.day-column small{font-size:9px}.category-layout{gap:14px}.donut span{font-size:11px}.category-legend>div{font-size:12px}.insight-grid{gap:8px}.insight-grid>div{padding:11px}.insight-grid span{font-size:11.5px}.insight-grid strong{font-size:16px}.insight-grid small{font-size:11px}.bank-logo small{font-size:8px!important}@media(max-width:700px){body{font-size:14px}.sidebar nav button{font-size:13px}.brand{padding:4px 7px 6px}.brand strong{font-size:19px}main{padding:106px 11px 24px}header{margin-bottom:11px}header h1{font-size:22px}header p{font-size:13px}.stats{gap:7px}.stat{padding:12px}.stat>span{font-size:12px}.stat strong{font-size:18px}.panel{padding:12px;margin-top:8px}.finance-card{min-height:292px;padding:14px}.form-grid,.resolution-form{padding:12px}.table-wrap{margin:0 -12px;padding:0 12px}}header p{font-size:15px}.stat>span{font-size:14px}.stat small,.account-card small,.debt-card small{font-size:12.5px}.credit-card>span,.credit-card>small,.card-top small{font-size:12.5px}.card-schedule small{font-size:11.5px}.card-alert,.card-installment{font-size:12px}.list small,.due-list small,.timeline small{font-size:12.5px}.date-box small{font-size:10.5px}.debt-card>span{font-size:13px}.meta,th{font-size:12px}.badge{font-size:12.5px}.form-grid label span,.resolution-field>span{font-size:13px}.settings-list>div{font-size:13.5px}.settings-list span,.notice,.payment-hint{font-size:13px}.resolution-history small{font-size:12px}.resolution-history em{font-size:11.5px}.resolution-preview span{font-size:12.5px}.resolution-preview small{font-size:11.5px}.report-toolbar span{font-size:13.5px}.report-toolbar label{font-size:12.5px}.report-stats .stat small{font-size:12px}.chart-summary span{font-size:12.5px}.chart-legend{font-size:11.5px}.chart-grid span{font-size:10.5px}.day-column small{font-size:10px}.donut span{font-size:11.5px}.category-legend>div{font-size:12.5px}.insight-grid span{font-size:12px}.insight-grid small{font-size:11.5px}.login-card>p{font-size:13.5px}.login-card label{font-size:13px}.bank-logo small{font-size:8.5px!important}@media(max-width:700px){header p{font-size:13.5px}.stat>span{font-size:12.5px}.stat small{font-size:12px}.credit-card>span,.credit-card>small,.card-top small{font-size:12px}.card-schedule small{font-size:11px}.list small,.due-list small,.timeline small{font-size:12px}.form-grid label span,.resolution-field>span{font-size:12.5px}}.resolution-history strong{font-size:17px}.resolution-history small{font-size:15px}.resolution-history b{font-size:16px}.resolution-history em{font-size:14.5px}.resolution-dot.loan-payment{background:#2563eb}.resolution-dot.loan-settled{background:#059669;box-shadow:0 0 0 4px #0596691f}.loan-payment-history>div{grid-template-columns:10px minmax(170px,1fr) auto auto}.loan-payment-history b{color:#2563eb}.loan-payment-history .loan-settled-row{border-radius:9px;background:linear-gradient(90deg,rgba(5,150,105,.07),transparent)}.loan-payment-history .loan-settled-row b{color:#059669}.loan-payment-history .loan-settled-badge{padding:5px 8px;border-radius:999px;color:#047857;background:#d1fae5;font-size:12px;font-weight:800;white-space:nowrap}@media(max-width:700px){.loan-payment-history>div{grid-template-columns:10px minmax(120px,1fr) auto}.loan-payment-history .loan-settled-badge{grid-column:2/-1;width:max-content}}.resolution-history.history-with-actions>div,.loan-payment-history.history-with-actions>div{grid-template-columns:10px minmax(170px,1fr) auto auto auto}.history-delete{width:30px;height:30px;display:grid;place-items:center;justify-self:end}.advance-history.history-with-actions .advance-history-row{grid-template-columns:auto minmax(150px,1fr) auto auto auto}@media(max-width:700px){.resolution-history.history-with-actions>div,.loan-payment-history.history-with-actions>div{grid-template-columns:10px minmax(110px,1fr) auto auto}.resolution-history.history-with-actions .history-delete{grid-column:-2/-1}.advance-history.history-with-actions .advance-history-row{grid-template-columns:auto minmax(110px,1fr) auto}.advance-history.history-with-actions .history-delete{grid-column:3;grid-row:1/3}.advance-history.history-with-actions em{grid-column:2}}.quick-actions .manage-icon{flex:0 0 34px;min-width:34px;padding:7px;display:grid;place-items:center}.quick-actions .edit-card-icon{margin-left:auto}.quick-actions .manage-icon.danger-icon{margin-left:0}.quick-actions .manage-icon svg{width:16px;height:16px}.quick-actions .manage-icon:hover{background:#ffffff38}.card-delete-warning{margin-bottom:0;color:#991b1b;border-color:#fecaca;background:#fef2f2}.loan-progress{margin:0 0 10px;padding:8px 9px;display:flex;justify-content:space-between;gap:8px;border-radius:8px;background:#fff7ed;color:#9a3412;font-size:12px}.loan-progress span{display:flex;flex-direction:column;gap:2px}.loan-progress span:last-child{text-align:right}.resolution-dot.installment_loan{background:#7c3aed}.signature-loan-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.loan-card{--loan-a:#111827;--loan-b:#334155;--loan-accent:#fff;position:relative;min-height:300px;overflow:hidden;padding:17px;border:0;color:#fff;background:linear-gradient(145deg,var(--loan-a),var(--loan-b));box-shadow:0 12px 28px #0f172a24}.loan-card:before{content:"";position:absolute;width:210px;height:210px;right:-75px;top:-95px;border:1px solid rgba(255,255,255,.2);border-radius:50%}.loan-card:after{content:"";position:absolute;width:180px;height:42px;right:-28px;bottom:22px;transform:rotate(-24deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.12));pointer-events:none}.loan-card>*{position:relative;z-index:1}.loan-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.loan-card-head>div{min-width:0}.loan-card-head small{font-size:10px;letter-spacing:.05em;color:#ffffffb8}.loan-card h3{margin:4px 0 16px;font-size:17px;color:#fff}.loan-card>span{font-size:12px;color:#ffffffbf}.loan-card>strong{display:block;margin:4px 0 10px;font-size:24px;color:#fff}.loan-logo{min-width:max-content;display:flex;align-items:center;gap:5px;color:#fff}.loan-logo i{font-style:normal;font-size:18px;color:var(--loan-accent)}.loan-logo b{font-size:17px;letter-spacing:-.02em}.loan-card-progress{height:7px;margin:7px 0 10px;overflow:hidden;border-radius:20px;background:#ffffff40}.loan-card-progress i{display:block;height:100%;border-radius:inherit;background:var(--loan-accent);transition:width .25s}.loan-card-metrics{display:grid;grid-template-columns:1fr 1fr;gap:7px}.loan-card-metrics>span{padding:8px;border:1px solid rgba(255,255,255,.2);border-radius:8px;display:flex;flex-direction:column;gap:4px;background:#ffffff0d}.loan-card-metrics small{font-size:10.5px;color:#ffffffb3}.loan-card-metrics b{font-size:13px;color:#fff}.loan-card-status{margin:8px 0;display:flex;justify-content:space-between;gap:8px;font-size:11.5px;color:#ffffffc7}.loan-card-status b{color:#fff}.loan-card-actions{display:flex;gap:7px;margin-top:auto}.loan-card-actions>button:first-child{flex:1;border:1px solid rgba(255,255,255,.38);border-radius:8px;padding:8px;color:#fff;background:#ffffff1a;font-weight:700}.loan-card-actions>button:first-child:hover{background:#fff3}.loan-card-actions .danger-icon{border:1px solid rgba(255,255,255,.38);color:#fff;background:#ffffff14}.loan-card.loan-ocb{--loan-a:#00563f;--loan-b:#00a67a;--loan-accent:#f4d21f}.loan-card.loan-mb{--loan-a:#082c67;--loan-b:#1769c2;--loan-accent:#fff}.loan-card.loan-homecredit{--loan-a:#b20d1c;--loan-b:#ed1b2f;--loan-accent:#fff}.loan-card.loan-fecredit{--loan-a:#045f3b;--loan-b:#15a05c;--loan-accent:#ffd43b}.loan-card.loan-hdsaison{--loan-a:#06397d;--loan-b:#147bd1;--loan-accent:#ef3340}.loan-card.loan-mirae{--loan-a:#07539a;--loan-b:#138bd2;--loan-accent:#f28c28}.loan-card.loan-shinhan{--loan-a:#064c8c;--loan-b:#00a6b2;--loan-accent:#b7d433}.loan-card.loan-mcredit{--loan-a:#173b75;--loan-b:#d71920;--loan-accent:#fff}.loan-card.loan-tpfico{--loan-a:#3e176d;--loan-b:#7b2cbf;--loan-accent:#f5c542}.loan-card.loan-cake{--loan-a:#5928a8;--loan-b:#ff4e9a;--loan-accent:#fff}.loan-card.loan-digimi{--loan-a:#062d62;--loan-b:#1856a5;--loan-accent:#ef4b5a}.loan-card.loan-sacombank{--loan-a:#075a9c;--loan-b:#1695d2;--loan-accent:#f4d21f}.loan-card.loan-vpbank,.loan-card.loan-vib{--loan-a:#146b3a;--loan-b:#30a652;--loan-accent:#e31b23}.loan-card.loan-techcombank{--loan-a:#7f1018;--loan-b:#dc2626;--loan-accent:#fff}.loan-card.loan-vietcombank{--loan-a:#046c45;--loan-b:#22a05a;--loan-accent:#fff}.loan-card.loan-bidv,.loan-card.loan-vietinbank{--loan-a:#005b8f;--loan-b:#138bb9;--loan-accent:#e33b3b}.loan-card.loan-acb{--loan-a:#164b93;--loan-b:#3478c7;--loan-accent:#fff}.loan-card.loan-hsbc{--loan-a:#20242b;--loan-b:#4b5563;--loan-accent:#e31b23}@media(max-width:700px){.signature-loan-grid{grid-template-columns:1fr}.loan-card{min-height:288px;padding:15px}}.loan-card.loan-momo{--loan-a:#8f0059;--loan-b:#d82d8b;--loan-accent:#fff}.loan-card-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.loan-special-installment{margin:7px 0 0;padding:6px 8px;border:1px solid rgba(255,255,255,.18);border-radius:7px;color:#ffffffdb;background:#ffffff14;font-size:10.5px}.loan-interest-preview em{display:block;margin-top:6px;color:#b91c1c;font-size:12px;font-style:normal;font-weight:700}.loan-interest-preview .loan-auto-adjust{color:#047857}.loan-interest-preview.invalid{border-color:#fecaca;background:#fff7f7}.loan-create-form .primary:disabled{cursor:not-allowed;opacity:.5}@media(max-width:700px){.loan-card-metrics{grid-template-columns:1fr 1fr}.loan-card-metrics>span:last-child{grid-column:1/-1}}.loan-card{background:linear-gradient(135deg,var(--loan-a),var(--loan-b),var(--loan-a));background-size:190% 190%;transition:transform .28s ease,box-shadow .28s ease;animation:loanGradient 12s ease-in-out infinite}.loan-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px #0f172a38}.loan-card:before{box-shadow:0 0 50px #ffffff14;animation:loanOrb 9s ease-in-out infinite}.loan-card:after{width:230px;right:-65px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);animation:loanShine 8s ease-in-out infinite}.loan-card h3{letter-spacing:.01em}.loan-card>strong{text-shadow:0 2px 12px rgba(0,0,0,.16)}.loan-logo{gap:7px;animation:loanLogoFloat 5s ease-in-out infinite}.loan-bank-logo{display:block;animation:loanLogoFloat 5s ease-in-out infinite}.loan-bank-logo .bank-logo{min-height:32px}.loan-bank-logo .bank-logo small{color:#ffffffd1}.loan-logo i{width:28px;height:28px;border:1px solid rgba(255,255,255,.34);border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:900;letter-spacing:-.04em;background:#ffffff24;box-shadow:inset 0 0 0 2px #ffffff0d,0 5px 14px #0000001f}.loan-logo b{text-shadow:0 2px 8px rgba(0,0,0,.14)}.loan-card-progress i{background:linear-gradient(90deg,var(--loan-accent),#fff,var(--loan-accent));background-size:180% 100%;transition:width .35s ease;animation:loanProgress 5s linear infinite}.loan-card-metrics>span{background:#ffffff0f;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .2s ease}.loan-card:hover .loan-card-metrics>span{background:#ffffff1a}.loan-card-actions>button:first-child{transition:background .2s ease,transform .2s ease}.loan-card-actions>button:first-child:hover{transform:translateY(-1px)}.loan-logo-homecredit i{color:#ed1b2f;background:#fff}.loan-logo-fecredit i{border-radius:7px;color:#126b3c;background:#ffd43b}.loan-logo-hdsaison i{border-radius:7px;color:#0d4f95;background:#fff}.loan-logo-mirae i{color:#1678bc;background:#fff;border-color:#f28c28}.loan-logo-shinhan i{color:#0786b3;background:#fff}.loan-logo-mcredit i{border-radius:7px;color:#d71920;background:#fff}.loan-logo-tpfico i{border-radius:9px;color:#6e2995;background:#f5c542}.loan-logo-ocb i{color:#f4d21f;background:#fff}.loan-logo-mb i{border-radius:7px;color:#ef3340;background:#fff}@keyframes loanGradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes loanOrb{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-12px,12px) scale(1.05)}}@keyframes loanShine{0%,70%,to{opacity:.25;transform:translate(-35px) rotate(-24deg)}85%{opacity:.75;transform:translate(38px) rotate(-24deg)}}@keyframes loanLogoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes loanProgress{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.loan-card,.loan-card:before,.loan-card:after,.loan-logo,.loan-bank-logo,.loan-card-progress i{animation:none}.loan-card,.loan-card-actions>button:first-child{transition:none}.loan-card:hover{transform:none}}.loan-logo-momo i{border-radius:9px!important;color:#a50064!important;background:#fff!important;box-shadow:inset 0 0 0 2px #a5006414,0 5px 14px #0000001f!important}.loan-card.loan-mcredit{--loan-accent:#fff;background-image:radial-gradient(circle at 17% 14%,rgba(255,255,255,.13),transparent 22%),linear-gradient(126deg,#132d63 0,#132d63 39%,#ba1622 40%,#e21c2a);animation:none}.loan-card.loan-mcredit:after{width:250px;height:24px;right:-38px;bottom:28px;background:linear-gradient(90deg,transparent,rgba(17,44,99,.28),rgba(255,255,255,.3),transparent)}.loan-logo-mcredit i{border:0!important;border-radius:8px!important;color:#d71920!important;background:#fff!important;font-size:19px;font-weight:950;font-style:italic}.loan-logo-mcredit b{font-weight:850;text-transform:lowercase;letter-spacing:-.7px}.loan-card.loan-shinhan{--loan-accent:#82d9e8;background-image:radial-gradient(circle at 84% 20%,rgba(73,214,230,.28),transparent 25%),linear-gradient(138deg,#082c62,#075d9c 48%,#05a5b7)}.loan-card.loan-shinhan:after{height:86px;bottom:-4px;background:linear-gradient(90deg,transparent,rgba(73,214,230,.3),rgba(255,255,255,.12),transparent)}.loan-logo-shinhan i{border:2px solid #dff9ff!important;color:#087ca5!important;background:#fff!important;font-size:11px;box-shadow:0 0 0 4px #76dcea2e!important}.loan-logo-shinhan b{font-size:14px;letter-spacing:-.25px}.loan-card.loan-fecredit{--loan-accent:#ffe04a;background-image:radial-gradient(circle at 84% 12%,rgba(255,224,74,.26),transparent 23%),linear-gradient(135deg,#075a36,#05874c 54%,#45a943)}.loan-card.loan-fecredit:after{height:62px;right:-16px;bottom:17px;background:linear-gradient(90deg,transparent,rgba(255,224,74,.36),transparent)}.loan-logo-fecredit i{border:0!important;border-radius:7px!important;color:#08683d!important;background:#ffde42!important;font-size:9px;box-shadow:0 5px 14px #00000024!important}.loan-logo-fecredit b{font-weight:900;letter-spacing:-.35px}.loan-card.loan-hdsaison{--loan-accent:#fff;background-image:radial-gradient(circle at 84% 12%,rgba(255,255,255,.16),transparent 23%),linear-gradient(132deg,#092f6d,#075fae 48%,#168dd4)}.loan-card.loan-hdsaison:after{width:270px;height:22px;right:-36px;bottom:30px;background:linear-gradient(90deg,transparent,#ed2438 35%,rgba(255,255,255,.75) 51%,transparent 72%);transform:rotate(-17deg)}.loan-logo-hdsaison i{border:0!important;border-radius:7px!important;color:#075da9!important;background:#fff!important;font-size:9px;box-shadow:inset 0 -3px #ed2438,0 5px 14px #0000001f!important}.loan-logo-hdsaison b{font-weight:900;letter-spacing:-.4px}.loan-card.loan-mirae{--loan-accent:#f6a623;background-image:radial-gradient(circle at 88% 18%,rgba(246,166,35,.4),transparent 22%),linear-gradient(135deg,#082f63,#075696,#118ac4)}.loan-card.loan-mirae:after{height:78px;right:-38px;bottom:4px;background:linear-gradient(90deg,transparent,rgba(246,166,35,.45),rgba(255,255,255,.12),transparent)}.loan-logo-mirae i{position:relative;border:0!important;color:transparent!important;background:conic-gradient(#f6a623 0,#f6a623 43%,#1787c7 43%,#1787c7)!important;box-shadow:0 5px 14px #00000024!important}.loan-logo-mirae i:after{content:"";width:12px;height:12px;border-radius:50%;background:#fff}.loan-logo-mirae b{font-size:15px;font-weight:850;letter-spacing:-.4px}.loan-card.loan-homecredit{--loan-accent:#fff;background-image:radial-gradient(circle at 84% 16%,rgba(255,255,255,.2),transparent 22%),linear-gradient(135deg,#ad1020,#dc1729,#f2293c)}.loan-card.loan-homecredit:after{height:72px;bottom:7px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),rgba(255,255,255,.08),transparent)}.loan-logo-homecredit i{border:0!important;color:#e51b2b!important;background:#fff!important;font-size:11px;box-shadow:0 5px 14px #00000021!important}.loan-logo-homecredit b{font-weight:800;letter-spacing:-.45px}.loan-card.loan-momo{--loan-accent:#fff;background-image:radial-gradient(circle at 84% 18%,rgba(255,255,255,.2),transparent 20%),radial-gradient(circle at 12% 84%,rgba(255,143,211,.26),transparent 27%),linear-gradient(135deg,#730046,#a50064,#dc2d8b)}.loan-card.loan-momo:after{height:90px;bottom:-4px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),rgba(255,115,198,.18),transparent)}.loan-logo-momo i{border:2px solid #fff!important;border-radius:9px!important;color:#fff!important;background:#a50064!important;font-size:12px;box-shadow:0 5px 14px #4b002d3d!important}.loan-logo-momo b{font-size:19px;font-weight:900;letter-spacing:-.8px}.loan-card.loan-tpfico{--loan-accent:#ffd451;background-image:radial-gradient(circle at 85% 16%,rgba(255,212,81,.3),transparent 23%),linear-gradient(135deg,#321060,#68218d 53%,#963aaa)}.loan-logo-tpfico i{border:0!important;color:#5e2183!important;background:#ffd451!important;font-size:9px}.loan-logo{padding:3px 4px;border-radius:10px;transition:transform .25s ease,filter .25s ease}.loan-card:hover .loan-logo{transform:translateY(-2px) scale(1.025);filter:drop-shadow(0 5px 10px rgba(0,0,0,.13))}.loan-logo b{white-space:nowrap;text-rendering:geometricPrecision}.loan-card.loan-mb{animation:loanMbBackground 11s ease-in-out infinite}.loan-card.loan-mb:before{width:22px;height:22px;right:92px;top:78px;border:0;border-radius:0;background:#ef3340;clip-path:polygon(50% 0,61% 36%,100% 50%,61% 64%,50% 100%,39% 64%,0 50%,39% 36%);animation:loanMbStar 4.8s ease-in-out infinite}.loan-card.loan-mb:after{animation:loanMbWave 7.5s ease-in-out infinite}.loan-card.loan-mb .loan-bank-logo{animation:loanMbLogo 5.5s ease-in-out infinite}.loan-card.loan-ocb{animation:loanOcbBackground 13s ease-in-out infinite}.loan-card.loan-ocb:before{width:150px;height:150px;right:-44px;top:-54px;border:2px solid rgba(244,210,31,.46);background:radial-gradient(circle,transparent 46%,rgba(244,210,31,.12) 47% 53%,transparent 54%);animation:loanOcbOrbit 9s linear infinite}.loan-card.loan-ocb:after{background:linear-gradient(90deg,transparent,rgba(244,210,31,.26),transparent);animation:loanOcbRibbon 8s ease-in-out infinite}.loan-card.loan-ocb .loan-bank-logo{animation:loanOcbLogo 6s ease-in-out infinite}.loan-card.loan-cake{animation:loanCakeAurora 10s ease-in-out infinite}.loan-card.loan-cake:before{width:190px;height:190px;right:-52px;top:-72px;border:0;border-radius:44% 56% 38% 62%;background:radial-gradient(circle at 35% 35%,rgba(255,230,65,.52),transparent 30%),radial-gradient(circle at 68% 65%,rgba(57,224,255,.42),transparent 36%);animation:loanCakeBlob 7s ease-in-out infinite}.loan-card.loan-cake:after{background:linear-gradient(90deg,transparent,rgba(255,92,190,.3),rgba(79,224,255,.2),transparent);animation:loanCakeRibbon 9s ease-in-out infinite}.loan-card.loan-cake .loan-bank-logo{animation:loanCakeLogo 4.5s ease-in-out infinite}.loan-card.loan-digimi{animation:loanDigimiBackground 12s ease-in-out infinite}.loan-card.loan-digimi:before{width:120px;height:120px;right:-22px;top:-28px;border:0;background:radial-gradient(circle,rgba(239,68,68,.62),rgba(239,68,68,.1) 46%,transparent 68%);animation:loanDigimiPulse 4.2s ease-in-out infinite}.loan-card.loan-digimi:after{background:linear-gradient(90deg,transparent,rgba(79,140,255,.34),transparent);animation:loanDigimiSignal 6s ease-in-out infinite}.loan-card.loan-digimi .loan-bank-logo{animation:loanDigimiLogo 5s ease-in-out infinite}.loan-card.loan-sacombank{animation:loanSacomBackground 14s ease-in-out infinite}.loan-card.loan-sacombank:before{width:145px;height:145px;right:-36px;top:-50px;border:2px solid rgba(244,207,84,.52);background:conic-gradient(from 0deg,transparent 0 68%,rgba(244,207,84,.32) 78%,transparent 88%);animation:loanSacomRing 10s linear infinite}.loan-card.loan-sacombank:after{background:linear-gradient(90deg,transparent,rgba(244,207,84,.36),transparent);animation:loanSacomSweep 8.5s ease-in-out infinite}.loan-card.loan-sacombank .loan-bank-logo{animation:loanSacomLogo 5.8s ease-in-out infinite}.loan-card.loan-mcredit:before{animation:none;opacity:.2}.loan-card.loan-mcredit:after{animation:loanMcreditSlash 7s ease-in-out infinite}.loan-logo-mcredit{animation:loanMcreditLogo 5.8s ease-in-out infinite}.loan-card.loan-shinhan:before{animation:loanShinhanOrbit 9s linear infinite}.loan-card.loan-shinhan:after{animation:loanShinhanFlow 7s ease-in-out infinite}.loan-logo-shinhan i{animation:loanShinhanMark 4.5s ease-in-out infinite}.loan-card.loan-fecredit:before{animation:loanFeHalo 6s ease-in-out infinite}.loan-card.loan-fecredit:after{animation:loanFeScan 5.8s ease-in-out infinite}.loan-logo-fecredit i{animation:loanFeBadge 4s ease-in-out infinite}.loan-card.loan-hdsaison:before{animation:loanHdOrbit 10s ease-in-out infinite}.loan-card.loan-hdsaison:after{animation:loanHdSwoosh 6.5s ease-in-out infinite}.loan-logo-hdsaison i{animation:loanHdBadge 5s ease-in-out infinite}.loan-card.loan-mirae:before{animation:loanMiraeSun 7s ease-in-out infinite}.loan-card.loan-mirae:after{animation:loanMiraeRay 8s ease-in-out infinite}.loan-logo-mirae i{animation:loanMiraeMark 9s linear infinite}.loan-card.loan-homecredit:before{animation:loanHomePulse 5.5s ease-out infinite}.loan-card.loan-homecredit:after{animation:loanHomeRibbon 7s ease-in-out infinite}.loan-logo-homecredit i{animation:loanHomeHeart 4s ease-in-out infinite}.loan-card.loan-momo:before{animation:loanMomoBubble 6s ease-in-out infinite}.loan-card.loan-momo:after{animation:loanMomoGlow 8s ease-in-out infinite}.loan-logo-momo i{animation:loanMomoBadge 4.8s ease-in-out infinite}.loan-card.loan-tpfico:before{animation:loanTpOrbit 9s linear infinite}.loan-card.loan-tpfico:after{background:linear-gradient(90deg,transparent,rgba(255,212,81,.4),transparent);animation:loanTpGold 6.8s ease-in-out infinite}.loan-logo-tpfico i{animation:loanTpBadge 5s ease-in-out infinite}@keyframes loanMbBackground{0%,to{background-position:0% 45%}50%{background-position:88% 55%}}@keyframes loanMbStar{0%,to{transform:rotate(0) scale(.82);opacity:.42}45%{transform:rotate(90deg) scale(1.15);opacity:1}70%{transform:rotate(135deg) scale(.9);opacity:.62}}@keyframes loanMbWave{0%,to{transform:translate(-42px) rotate(-24deg);opacity:.16}50%{transform:translate(62px) rotate(-18deg);opacity:.62}}@keyframes loanMbLogo{0%,to{transform:translateY(0)}50%{transform:translateY(-2px);filter:drop-shadow(0 0 8px rgba(239,51,64,.32))}}@keyframes loanOcbBackground{0%,to{background-position:5% 50%}50%{background-position:92% 50%}}@keyframes loanOcbOrbit{to{transform:rotate(360deg)}}@keyframes loanOcbRibbon{0%,to{transform:translate(-48px) rotate(-24deg);opacity:.15}55%{transform:translate(58px) rotate(-24deg);opacity:.7}}@keyframes loanOcbLogo{0%,to{transform:translateY(0)}50%{transform:translateY(-2px) scale(1.02);filter:drop-shadow(0 0 9px rgba(244,210,31,.3))}}@keyframes loanCakeAurora{0%,to{background-position:0% 40%}50%{background-position:100% 65%}}@keyframes loanCakeBlob{0%,to{transform:translate(0) rotate(0) scale(.92)}50%{transform:translate(-24px,24px) rotate(28deg) scale(1.08)}}@keyframes loanCakeRibbon{0%,to{transform:translate(-55px,8px) rotate(-28deg);opacity:.18}50%{transform:translate(65px,-9px) rotate(-18deg);opacity:.72}}@keyframes loanCakeLogo{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-3px) rotate(1deg)}}@keyframes loanDigimiBackground{0%,to{background-position:0% 55%}50%{background-position:100% 42%}}@keyframes loanDigimiPulse{0%,to{transform:scale(.75);opacity:.28;filter:blur(1px)}50%{transform:scale(1.18);opacity:.9;filter:blur(5px)}}@keyframes loanDigimiSignal{0%,to{transform:translate(-70px) rotate(-20deg);opacity:.12}50%{transform:translate(85px) rotate(-20deg);opacity:.65}}@keyframes loanDigimiLogo{0%,to{transform:translate(0)}45%{transform:translate(-2px)}55%{transform:translate(2px)}}@keyframes loanSacomBackground{0%,to{background-position:10% 50%}50%{background-position:90% 50%}}@keyframes loanSacomRing{to{transform:rotate(360deg)}}@keyframes loanSacomSweep{0%,to{transform:translate(-52px) rotate(-24deg);opacity:.12}58%{transform:translate(62px) rotate(-24deg);opacity:.74}}@keyframes loanSacomLogo{0%,to{transform:translateY(0)}50%{transform:translateY(-2px);filter:drop-shadow(0 0 10px rgba(244,207,84,.42))}}@keyframes loanMcreditSlash{0%,to{transform:translate(-72px) rotate(-18deg);opacity:.08}52%{transform:translate(72px) rotate(-15deg);opacity:.58}}@keyframes loanMcreditLogo{0%,to{transform:translateY(0);filter:none}50%{transform:translateY(-2px);filter:drop-shadow(0 4px 7px rgba(10,31,76,.24))}}@keyframes loanShinhanOrbit{to{transform:translate(-12px,12px) rotate(360deg)}}@keyframes loanShinhanFlow{0%,to{transform:translate(-55px) rotate(-22deg);opacity:.15}50%{transform:translate(72px) rotate(-14deg);opacity:.62}}@keyframes loanShinhanMark{0%,to{transform:rotate(0) scale(1)}50%{transform:rotate(12deg) scale(1.08)}}@keyframes loanFeHalo{0%,to{transform:scale(.82);opacity:.28}50%{transform:scale(1.08);opacity:.62}}@keyframes loanFeScan{0%,to{transform:translate(-80px) rotate(-18deg);opacity:.12}48%{transform:translate(78px) rotate(-18deg);opacity:.78}}@keyframes loanFeBadge{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-2px) rotate(-3deg)}}@keyframes loanHdOrbit{0%,to{transform:translate(0) scale(.95)}50%{transform:translate(-18px,18px) scale(1.08)}}@keyframes loanHdSwoosh{0%,to{transform:translate(-75px) rotate(-17deg);opacity:.2}52%{transform:translate(78px) rotate(-11deg);opacity:.9}}@keyframes loanHdBadge{0%,to{transform:translateY(0)}50%{transform:translateY(-2px);box-shadow:inset 0 -3px #ed2438,0 7px 18px #0000002e}}@keyframes loanMiraeSun{0%,to{transform:translate(0) scale(.9);opacity:.3}50%{transform:translate(-18px,16px) scale(1.12);opacity:.65}}@keyframes loanMiraeRay{0%,to{transform:translate(-52px) rotate(-24deg);opacity:.14}50%{transform:translate(72px) rotate(-14deg);opacity:.72}}@keyframes loanMiraeMark{to{transform:rotate(360deg)}}@keyframes loanHomePulse{0%{transform:scale(.72);opacity:.48}70%,to{transform:scale(1.18);opacity:.05}}@keyframes loanHomeRibbon{0%,to{transform:translate(-55px) rotate(-24deg);opacity:.18}50%{transform:translate(68px) rotate(-18deg);opacity:.66}}@keyframes loanHomeHeart{0%,to{transform:scale(1)}45%{transform:scale(1.11)}58%{transform:scale(1.04)}}@keyframes loanMomoBubble{0%,to{transform:translateY(8px) scale(.85);border-radius:45% 55% 52% 48%}50%{transform:translate(-22px,-10px) scale(1.08);border-radius:58% 42% 39% 61%}}@keyframes loanMomoGlow{0%,to{transform:translate(-48px) rotate(-28deg);opacity:.16}50%{transform:translate(68px) rotate(-16deg);opacity:.68}}@keyframes loanMomoBadge{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(4deg)}}@keyframes loanTpOrbit{to{transform:translate(-10px,12px) rotate(360deg)}}@keyframes loanTpGold{0%,to{transform:translate(-55px) rotate(-24deg);opacity:.14}50%{transform:translate(70px) rotate(-18deg);opacity:.76}}@keyframes loanTpBadge{0%,to{transform:translateY(0)}50%{transform:translateY(-2px);filter:drop-shadow(0 0 8px rgba(255,212,81,.38))}}@media(prefers-reduced-motion:reduce){.loan-card,.loan-card:before,.loan-card:after,.loan-card .loan-logo,.loan-card .loan-bank-logo,.loan-card .loan-logo i{animation:none!important}.loan-card:hover .loan-logo{transform:none}}.loan-celebration{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;overflow:hidden;pointer-events:none;background:radial-gradient(circle at center,#0f172a1f,#02061780);animation:celebrationScene 5.6s ease both}.celebration-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 48%,rgba(255,214,10,.22),transparent 34%);animation:celebrationGlow 1.4s ease-in-out infinite alternate}.celebration-message{position:absolute;left:50%;top:50%;width:min(440px,calc(100% - 36px));padding:27px 24px 25px;display:flex;flex-direction:column;align-items:center;text-align:center;color:#fff;background:linear-gradient(145deg,#0f172af0,#1e293be6);border:1px solid rgba(255,255,255,.24);border-radius:22px;box-shadow:0 28px 80px #0206176b,0 0 55px #ffd60a26;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transform:translate(-50%,-50%);animation:celebrationMessage 5.6s cubic-bezier(.2,.8,.2,1) both}.celebration-message>span{font-size:43px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.25));animation:celebrationIcon 1.15s ease-in-out infinite alternate}.celebration-message>strong{margin-top:5px;font-size:32px;line-height:1.15;background:linear-gradient(90deg,#fde047,#fff,#fbbf24);background-clip:text;-webkit-background-clip:text;color:transparent}.celebration-message p{margin:10px 0 5px;font-size:17px}.celebration-message p b{color:#fde047}.celebration-message small{color:#cbd5e1;font-size:13px}.firework{position:absolute;width:5px;height:5px;animation:fireworkCore 1.8s ease-out var(--delay) 2 both}.firework i{position:absolute;left:0;top:0;width:4px;height:16px;border-radius:99px;background:var(--color);box-shadow:0 0 8px var(--color);transform-origin:50% 2px;transform:rotate(calc(var(--ray)*30deg)) translateY(0);animation:fireworkRay 1.8s cubic-bezier(.15,.65,.25,1) var(--delay) 2 both}.confetti{position:absolute;left:0;top:-18px;width:8px;height:14px;border-radius:2px;background:var(--color);transform:translate(var(--x));animation:confettiFall var(--duration) linear var(--delay) both}.loan-card.loan-paid-off{box-shadow:0 14px 34px #05966938,inset 0 0 0 2px #ffffff2b}.loan-card.loan-paid-off>strong{color:#d1fae5}.loan-card.loan-paid-off .loan-card-progress i{background:#a7f3d0}.loan-card.loan-paid-off .loan-card-status:after{content:"ĐÃ TẤT TOÁN";color:#d1fae5;font-weight:800;letter-spacing:.05em}@keyframes celebrationScene{0%{opacity:0}8%,83%{opacity:1}to{opacity:0}}@keyframes celebrationGlow{0%{opacity:.35;transform:scale(.9)}to{opacity:.85;transform:scale(1.12)}}@keyframes celebrationMessage{0%{opacity:0;transform:translate(-50%,-42%) scale(.76)}12%,82%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-54%) scale(.96)}}@keyframes celebrationIcon{0%{transform:rotate(-7deg) scale(.96)}to{transform:rotate(7deg) scale(1.08)}}@keyframes fireworkCore{0%{opacity:0;transform:scale(.3)}12%,65%{opacity:1}to{opacity:0;transform:scale(1.1)}}@keyframes fireworkRay{0%{opacity:0;transform:rotate(calc(var(--ray)*30deg)) translateY(0) scaleY(.2)}15%{opacity:1}to{opacity:0;transform:rotate(calc(var(--ray)*30deg)) translateY(-92px) scaleY(.7)}}@keyframes confettiFall{0%{opacity:0;transform:translate3d(var(--x),-20px,0) rotate(0)}8%{opacity:1}to{opacity:.8;transform:translate3d(calc(var(--x) + var(--drift)),105vh,0) rotate(var(--turn))}}@media(max-width:700px){.celebration-message{padding:23px 18px}.celebration-message>strong{font-size:27px}.celebration-message p{font-size:15px}.firework i{height:12px}}@media(prefers-reduced-motion:reduce){.loan-celebration{animation:none;background:#0206178f}.celebration-glow,.firework,.firework i,.confetti,.celebration-message,.celebration-message>span{animation:none}.firework,.confetti{display:none}.celebration-message{opacity:1}}.account-signature-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}.signature-account-card{--account-a:#111827;--account-b:#334155;--account-accent:#fff;position:relative;isolation:isolate;min-height:205px;overflow:hidden;padding:17px;display:flex;flex-direction:column;align-items:stretch;gap:0;border:0;color:#fff;background:linear-gradient(135deg,var(--account-a),var(--account-b),var(--account-a));background-size:180% 180%;box-shadow:0 13px 30px #0f172a2b;transition:transform .28s ease,box-shadow .28s ease;animation:accountGradient 12s ease-in-out infinite}.signature-account-card:hover{transform:translateY(-3px);box-shadow:0 19px 40px #0f172a3b}.signature-account-card:before{content:"";position:absolute;z-index:-1;width:170px;height:170px;right:-54px;top:-68px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:radial-gradient(circle at 36% 36%,rgba(255,255,255,.18),transparent 58%);animation:accountOrb 8s ease-in-out infinite}.signature-account-card:after{content:"";position:absolute;z-index:-1;width:220px;height:34px;right:-45px;bottom:27px;transform:rotate(-22deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);animation:accountSweep 8s ease-in-out infinite}.account-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.account-card-top>div{min-width:0}.signature-account-card .account-card-top small{color:#ffffffb8;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase}.signature-account-card h3{margin:4px 0 22px;color:#fff;font-size:17px}.account-card-logo{min-width:max-content;animation:accountLogoFloat 5s ease-in-out infinite}.account-card-logo .bank-logo{min-height:34px}.account-card-logo .bank-logo small{color:#fffc}.account-balance-label{color:#ffffffb8;font-size:11.5px}.signature-account-card>strong{display:block;margin:4px 0 13px;color:#fff;font-size:25px;text-shadow:0 3px 13px rgba(0,0,0,.18)}.account-manifest{margin-top:auto;padding:9px 38px 9px 10px;display:flex;flex-direction:column;gap:3px;border:1px solid rgba(255,255,255,.17);border-radius:9px;background:#ffffff14;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.account-manifest span{color:#ffffffc7;font-size:11px}.account-manifest b{color:#fff;font-size:12.5px}.signature-account-card>.danger-icon{top:auto;right:13px;bottom:13px;border:1px solid rgba(255,255,255,.3);color:#fff;background:#0f172a2b}.signature-account-card>.danger-icon:hover{color:#fff;background:#dc2626a3}.wallet-logo,.cash-logo{display:flex;align-items:center;gap:7px;color:#fff}.wallet-logo i,.cash-logo i{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;font-style:normal;font-weight:900;background:#ffffff29;box-shadow:0 5px 14px #0000001f}.wallet-logo b,.cash-logo b{font-size:14px;white-space:nowrap}.generic-account-logo svg{padding:4px;width:29px;height:29px;border-radius:9px;background:#ffffff24}.signature-account-card.account-mb{--account-a:#04152f;--account-b:#0752a6}.signature-account-card.account-mb:before{width:24px;height:24px;right:90px;top:76px;border:0;border-radius:0;background:#ef3340;clip-path:polygon(50% 0,61% 36%,100% 50%,61% 64%,50% 100%,39% 64%,0 50%,39% 36%);animation:accountMbStar 5s ease-in-out infinite}.signature-account-card.account-ocb{--account-a:#043d2d;--account-b:#0aa274;--account-accent:#f4d21f}.signature-account-card.account-ocb:before{border:2px solid rgba(244,210,31,.48);background:radial-gradient(circle,transparent 45%,rgba(244,210,31,.13) 46% 53%,transparent 54%);animation:accountOcbOrbit 10s linear infinite}.signature-account-card.account-cake{--account-a:#4c1d95;--account-b:#db2777}.signature-account-card.account-cake:before{border:0;border-radius:43% 57% 38% 62%;background:radial-gradient(circle at 32% 30%,rgba(255,232,62,.6),transparent 28%),radial-gradient(circle at 68% 67%,rgba(34,211,238,.48),transparent 37%);animation:accountCakeBlob 7s ease-in-out infinite}.signature-account-card.account-digimi{--account-a:#061632;--account-b:#1856a5}.signature-account-card.account-digimi:before{border:0;background:radial-gradient(circle,rgba(239,68,68,.7),rgba(239,68,68,.1) 43%,transparent 67%);animation:accountDigimiPulse 4.5s ease-in-out infinite}.signature-account-card.account-sacombank{--account-a:#043b7a;--account-b:#079bd3;--account-accent:#f4cf54}.signature-account-card.account-sacombank:before{border:2px solid rgba(244,207,84,.54);background:conic-gradient(transparent 0 68%,rgba(244,207,84,.35) 78%,transparent 88%);animation:accountSacomRing 11s linear infinite}.signature-account-card.account-techcombank{--account-a:#740b14;--account-b:#dc2626}.signature-account-card.account-vpbank,.signature-account-card.account-vietcombank{--account-a:#064e3b;--account-b:#41a84b}.signature-account-card.account-vietinbank,.signature-account-card.account-bidv,.signature-account-card.account-vib,.signature-account-card.account-acb{--account-a:#06376b;--account-b:#0787bd}.signature-account-card.account-tpbank{--account-a:#3b0764;--account-b:#8b31b5}.signature-account-card.account-hsbc{--account-a:#2a0a0d;--account-b:#db0011}.signature-account-card.account-momo{--account-a:#720046;--account-b:#dc2d8b}.momo-account-logo i{color:#a50064;background:#fff}.momo-account-logo b{font-size:19px;letter-spacing:-.7px}.signature-account-card.account-cash{--account-a:#043629;--account-b:#0c7b50;--account-accent:#f6d365;background-image:radial-gradient(circle at 84% 14%,rgba(246,211,101,.42),transparent 22%),linear-gradient(135deg,#03271e,#075b3e 52%,#119466);animation:cashWealthGlow 9s ease-in-out infinite}.signature-account-card.account-cash:before{content:"₫";width:58px;height:58px;right:25px;top:54px;display:grid;place-items:center;border:2px solid rgba(255,220,112,.74);color:#ffe394;background:#f6d36521;font-size:27px;font-weight:900;box-shadow:0 0 0 8px #f6d3650f,0 0 28px #f6d36538;animation:cashCoinFloat 4.8s ease-in-out infinite}.signature-account-card.account-cash:after{height:24px;background:linear-gradient(90deg,transparent,rgba(255,224,125,.5),transparent);animation:cashGoldSweep 6.5s ease-in-out infinite}.cash-logo i{color:#0b6b49;background:linear-gradient(145deg,#fff4bd,#e7b938);box-shadow:0 5px 16px #1d100033}.cash-logo b{color:#ffe59a;font-size:11px;letter-spacing:.08em}.account-cash .account-manifest{border-color:#ffe07d47;background:#022c1f4d}.account-cash .account-manifest span{color:#ffe8a8}.account-cash .account-manifest b{color:#fff7d6}@keyframes accountGradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes accountOrb{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(-14px,16px) rotate(15deg)}}@keyframes accountSweep{0%,to{transform:translate(-50px) rotate(-22deg);opacity:.12}52%{transform:translate(62px) rotate(-18deg);opacity:.65}}@keyframes accountLogoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes accountMbStar{0%,to{transform:rotate(0) scale(.82);opacity:.42}50%{transform:rotate(90deg) scale(1.1);opacity:1}}@keyframes accountOcbOrbit{to{transform:rotate(360deg)}}@keyframes accountCakeBlob{0%,to{transform:translate(0) rotate(0) scale(.92)}50%{transform:translate(-20px,20px) rotate(25deg) scale(1.08)}}@keyframes accountDigimiPulse{0%,to{transform:scale(.76);opacity:.3;filter:blur(1px)}50%{transform:scale(1.16);opacity:.9;filter:blur(5px)}}@keyframes accountSacomRing{to{transform:rotate(360deg)}}@keyframes cashWealthGlow{0%,to{background-position:5% 50%}50%{background-position:92% 50%}}@keyframes cashCoinFloat{0%,to{transform:translateY(4px) rotate(-5deg)}50%{transform:translateY(-8px) rotate(5deg)}}@keyframes cashGoldSweep{0%,to{transform:translate(-65px) rotate(-18deg);opacity:.1}50%{transform:translate(72px) rotate(-14deg);opacity:.72}}@media(max-width:700px){.account-signature-grid{grid-template-columns:1fr}.signature-account-card{min-height:198px}.signature-account-card>strong{font-size:23px}}@media(prefers-reduced-motion:reduce){.signature-account-card,.signature-account-card:before,.signature-account-card:after,.account-card-logo{animation:none!important}.signature-account-card:hover{transform:none}}.cash-logo b{max-width:120px;overflow:hidden;letter-spacing:.06em;text-overflow:ellipsis}.cash-logo{gap:0}.cash-logo b{max-width:150px;font-size:12px}.signature-account-card{min-height:168px}.signature-account-card h3{margin-bottom:19px}.signature-account-card>strong{margin-bottom:0}.signature-account-card.account-cash:before{top:48px}.signature-account-card>.danger-icon{bottom:12px}.advance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:11px}.advance-summary>div{min-width:0;padding:13px 14px;border:1px solid #e5e7eb;border-radius:10px;background:linear-gradient(145deg,#fff,#f8fafc)}.advance-summary span,.advance-summary small{display:block;color:#64748b}.advance-summary span{font-size:12.5px;font-weight:600}.advance-summary strong{display:block;margin:3px 0 1px;color:#0f172a;font-size:20px}.advance-summary>div:first-child strong{color:#d97706}.advance-summary>div:nth-child(2) strong,.advance-summary>div:last-child strong{color:#059669}.advance-summary small{font-size:11.5px}.advance-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,420px));gap:10px}.advance-card{position:relative;min-width:0;min-height:306px;padding:16px;border:1px solid #dfe8e4;border-radius:12px;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(150deg,#fff,#f8fffc);box-shadow:0 8px 24px #0f172a0f;transition:transform .2s ease,box-shadow .2s ease}.advance-card:before{content:"";position:absolute;width:150px;height:150px;right:-72px;top:-82px;border:24px solid rgba(16,185,129,.06);border-radius:50%;pointer-events:none}.advance-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #0f172a1a}.advance-card>*{position:relative;z-index:1}.advance-card.is-complete{border-color:#dbe4e0;background:linear-gradient(150deg,#fff,#f8faf9)}.advance-card.is-payable{border-color:#fee2e2;background:linear-gradient(150deg,#fff,snow)}.advance-card-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px;margin-bottom:13px}.advance-card-head>div:nth-child(2){min-width:0}.advance-card-head small{display:block;color:#64748b;font-size:10.5px;letter-spacing:.04em}.advance-card-head h3{margin:2px 0 0;overflow:hidden;color:#172033;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.advance-avatar{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:#047857;background:#d1fae5}.is-payable .advance-avatar{color:#b91c1c;background:#fee2e2}.advance-status{padding:5px 7px;border-radius:20px;color:#b45309;background:#fef3c7;font-size:10.5px;font-weight:700;white-space:nowrap}.advance-status.done{color:#047857;background:#d1fae5}.advance-card-head .danger-icon{color:#94a3b8}.advance-note{min-height:40px;margin:0 0 12px;padding:8px 10px;border-left:3px solid #10b981;border-radius:0 7px 7px 0;color:#475569;background:#f0fdf4;font-size:12.5px;line-height:1.45}.advance-amount>span{display:block;color:#64748b;font-size:12px}.advance-amount>strong{display:block;margin:3px 0 8px;color:#0f172a;font-size:23px}.advance-card.is-complete .advance-amount>strong{color:#059669;font-size:20px}.advance-progress{height:7px;margin-bottom:11px;overflow:hidden;border-radius:10px;background:#e2e8f0}.advance-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#10b981,#34d399);transition:width .3s ease}.advance-metrics{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:8px}.advance-metrics>div,.advance-context>span{min-width:0;padding:8px 9px;border:1px solid #e5e7eb;border-radius:8px;background:#ffffffb8}.advance-metrics small,.advance-context small{display:block;margin-bottom:3px;color:#64748b;font-size:10.5px}.advance-metrics b,.advance-context b{display:block;overflow:hidden;color:#334155;font-size:12.5px;text-overflow:ellipsis;white-space:nowrap}.advance-context{display:grid;grid-template-columns:1fr 1fr;gap:7px}.advance-context>span{position:relative;padding-left:31px}.advance-context svg{position:absolute;left:9px;top:50%;color:#10b981;transform:translateY(-50%)}.advance-footer{min-height:39px;margin-top:auto;padding-top:11px;display:flex;align-items:center;justify-content:space-between;gap:8px}.advance-footer>span{min-width:0;overflow:hidden;color:#64748b;font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.advance-footer button{flex:none;border:0;border-radius:8px;padding:8px 11px;color:#fff;background:#059669;font-size:12px;font-weight:700}.advance-footer button:hover{background:#047857}.is-payable .advance-footer button{background:#dc2626}.advance-card.is-complete .advance-progress i{background:#059669}.advance-history{display:flex;flex-direction:column}.advance-history-row{display:grid;grid-template-columns:auto minmax(150px,1fr) auto auto;align-items:center;gap:11px;padding:11px 2px;border-bottom:1px solid #edf0f3}.advance-history-row:last-child{border-bottom:0}.advance-history-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:#047857;background:#d1fae5}.advance-history-row>div{min-width:0;display:flex;flex-direction:column;gap:3px}.advance-history-row strong{font-size:13.5px}.advance-history-row small{overflow:hidden;color:#64748b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.advance-history-row>b{color:#059669;font-size:14px}.advance-history-row em{padding:4px 7px;border-radius:20px;color:#047857;background:#d1fae5;font-size:11px;font-style:normal;font-weight:700;white-space:nowrap}@media(max-width:700px){.advance-summary{grid-template-columns:1fr 1fr}.advance-summary>div:first-child{grid-column:1/-1}.advance-grid{grid-template-columns:1fr}.advance-card{min-height:306px;padding:14px}.advance-card-head{grid-template-columns:auto minmax(0,1fr) auto}.advance-status{grid-column:2/3;justify-self:start}.advance-card-head .danger-icon{grid-column:3;grid-row:1/3}.advance-summary strong{font-size:18px}.advance-history-row{grid-template-columns:auto minmax(120px,1fr) auto}.advance-history-row em{grid-column:2/-1;justify-self:start}}@media(max-width:420px){.advance-summary{grid-template-columns:1fr}.advance-summary>div:first-child{grid-column:auto}.advance-metrics,.advance-context{grid-template-columns:1fr 1fr}.advance-footer{align-items:stretch;flex-direction:column}.advance-footer button{width:100%}}.advance-summary span{font-size:15.5px}.advance-summary strong{font-size:23px}.advance-summary small{font-size:14.5px}.advance-card-head small{font-size:13.5px}.advance-card-head h3{font-size:19px}.advance-status{font-size:13.5px}.advance-note{font-size:15.5px}.advance-amount>span{font-size:15px}.advance-amount>strong{font-size:26px}.advance-card.is-complete .advance-amount>strong{font-size:23px}.advance-metrics small,.advance-context small{font-size:13.5px}.advance-metrics b,.advance-context b{font-size:15.5px}.advance-footer>span{font-size:14.5px}.advance-footer button{font-size:15px}.advance-history-row strong{font-size:16.5px}.advance-history-row small{font-size:15px}.advance-history-row>b{font-size:17px}.advance-history-row em{font-size:14px}@media(max-width:700px){.advance-summary strong{font-size:21px}}.advance-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.advance-card{min-height:278px;padding:13px}.advance-card-head{gap:7px;margin-bottom:9px}.advance-avatar{width:34px;height:34px;border-radius:9px}.advance-card-head small{font-size:11.5px}.advance-card-head h3{font-size:17px}.advance-status{padding:4px 6px;font-size:11.5px}.advance-note{min-height:34px;margin-bottom:9px;padding:7px 9px;font-size:13.5px}.advance-amount>span{font-size:13px}.advance-amount>strong{margin-bottom:6px;font-size:23px}.advance-progress{height:6px;margin-bottom:8px}.advance-metrics{gap:6px;margin-bottom:6px}.advance-metrics>div,.advance-context>span{padding:7px 8px}.advance-metrics small,.advance-context small{font-size:11.5px}.advance-metrics b,.advance-context b{font-size:13.5px}.advance-context{gap:6px}.advance-context>span{padding-left:29px}.advance-context svg{left:8px}.advance-footer{min-height:34px;padding-top:8px}.advance-footer>span{font-size:12.5px}.advance-footer button{padding:7px 9px;font-size:13px}@media(max-width:1100px)and (min-width:701px){.advance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.advance-grid{grid-template-columns:1fr}.advance-card{min-height:278px;padding:13px}}.panel.titleless-panel{margin-top:0}.header-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.header-page-action{display:flex;align-items:center}.header-page-action .primary,.header-actions .refresh,.header-actions .privacy-toggle{height:36px}.header-actions .refresh{margin-left:0}.privacy-toggle{width:36px;padding:0;border:1px solid #e2e8f0;border-radius:8px;display:grid;place-items:center;color:#64748b;background:#fff;transition:color .18s ease,border-color .18s ease,background .18s ease}.privacy-toggle:hover,.privacy-toggle.visible{border-color:#bfdbfe;color:#2563eb;background:#eff6ff}.panel-head.titleless,.mobile-panel-action{display:none}.transaction-panel table{font-size:15.5px}.transaction-panel th{font-size:14px}.transaction-panel .badge{font-size:14.5px}.transaction-panel th:last-child,.transaction-panel td:last-child{width:42px;padding-left:4px;padding-right:4px;text-align:center}.transaction-panel td:last-child .danger-icon{width:30px;height:30px;display:inline-grid;place-items:center}.transaction-date-heading{display:flex;align-items:center;gap:6px}.transaction-date-picker{position:relative;width:25px;height:25px;border:1px solid #d9dee7;border-radius:6px;display:grid;place-items:center;color:#64748b;background:#fff;cursor:pointer}.transaction-date-picker:hover{border-color:#94a3b8;color:#2563eb}.transaction-date-picker input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;border:0;opacity:0;cursor:pointer}.transaction-date-clear{border:0;border-radius:6px;padding:4px 6px;display:inline-flex;align-items:center;gap:4px;color:#1d4ed8;background:#eff6ff;font-size:11.5px;font-weight:700}.signature-account-card>.danger-icon{display:none}.card-balance-row{margin:1px 0 8px;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:10px}.card-balance-row>span{min-width:0;display:flex;flex-direction:column;gap:3px}.card-balance-row>span:last-child{text-align:right}.card-balance-row small{color:#ffffffc2;font-size:12px}.card-balance-row strong{overflow:hidden;color:#fff;font-size:21px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.card-balance-row>span:last-child strong{color:#fff;font-size:21px}.dashboard-overview-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:10px}.dashboard-overview-grid .panel{min-width:0}.dashboard-cashflow{min-height:170px;display:flex;flex-direction:column;justify-content:center;gap:14px}.dashboard-flow-row>div:first-child{margin-bottom:5px;display:flex;justify-content:space-between;gap:10px}.dashboard-flow-row span{color:#64748b;font-size:13px;font-weight:700}.dashboard-flow-row strong{font-size:14px}.dashboard-flow-row>div:last-child{height:11px;overflow:hidden;border-radius:10px;background:#eef2f7}.dashboard-flow-row i{display:block;height:100%;min-width:3px;border-radius:inherit}.dashboard-flow-row.income i{background:#10b981}.dashboard-flow-row.expense i{background:#ef4444}.dashboard-flow-result{padding:9px 10px;border-radius:8px;display:flex;justify-content:space-between;gap:10px;background:#f8fafc}.dashboard-flow-result span,.dashboard-flow-result strong{font-size:12.5px}@media(max-width:950px){.dashboard-overview-grid{grid-template-columns:1fr}}.form-grid .field-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.form-grid .max-check{display:inline-flex;align-items:center;cursor:pointer}.form-grid .max-check input{width:14px;height:14px;margin:0;padding:0;accent-color:#059669;cursor:pointer}@media(max-width:700px){.header-page-action{display:none}.panel-head.titleless{display:flex;min-height:0;margin-bottom:9px}.mobile-panel-action{width:100%;display:block}.mobile-panel-action .primary{width:100%}}.danger-zone{margin-top:12px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #fecaca;border-radius:13px;background:linear-gradient(135deg,#fff,#fff7f7)}.danger-zone>div{min-width:0;display:flex;flex-direction:column;gap:3px}.danger-zone span{color:#b91c1c;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.danger-zone strong{color:#7f1d1d;font-size:16px}.danger-zone small{color:#64748b;font-size:12px;line-height:1.5}.danger-zone button{flex:none;border:1px solid #dc2626;border-radius:9px;padding:9px 13px;color:#fff;background:#dc2626;font-weight:800}.danger-zone button:hover{background:#b91c1c}.danger-zone button:disabled{border-color:#cbd5e1;background:#e2e8f0;color:#94a3b8;cursor:not-allowed}.reset-warning{border-color:#fecaca;color:#991b1b;background:#fef2f2;line-height:1.55}.reset-data-modal .form-actions .primary{background:#dc2626}.reset-data-modal .form-actions .primary:hover{background:#b91c1c}@media(max-width:700px){.danger-zone{align-items:stretch;flex-direction:column}.danger-zone button{width:100%}}.report-grid-simple{grid-template-columns:minmax(0,1fr) minmax(320px,1fr)}.cashflow-simple{min-height:280px;padding:12px 4px 2px;display:flex;flex-direction:column;justify-content:center;gap:24px}.cashflow-row>div:first-child{margin-bottom:9px;display:flex;align-items:center;justify-content:space-between;gap:12px}.cashflow-row span{color:#64748b;font-size:14px;font-weight:700}.cashflow-row strong{font-size:17px}.cashflow-track{height:20px;overflow:hidden;border-radius:7px;background:#eef2f7}.cashflow-track i{display:block;height:100%;min-width:4px;border-radius:inherit;transition:width .3s ease}.cashflow-row.income .cashflow-track i{background:linear-gradient(90deg,#059669,#34d399)}.cashflow-row.expense .cashflow-track i{background:linear-gradient(90deg,#dc2626,#fb7185)}.cashflow-result{padding:13px 15px;border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:10px}.cashflow-result.positive{color:#047857;background:#ecfdf5}.cashflow-result.negative{color:#b91c1c;background:#fef2f2}.cashflow-result span{font-size:14px;font-weight:700}.cashflow-result strong{font-size:19px}.report-grid-simple .category-layout{min-height:280px}.report-grid-simple .donut strong{font-size:17px}@media(max-width:1050px){.report-grid-simple{grid-template-columns:1fr}.cashflow-simple{min-height:240px}}.report-balance-stats .stat{min-height:104px}.report-month-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:2px 0 0;padding:12px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}.report-month-summary>div{min-width:0;padding:4px 11px;border-right:1px solid #edf0f3}.report-month-summary>div:last-child{border-right:0}.report-month-summary span{display:block;margin-bottom:4px;color:#64748b;font-size:12.5px}.report-month-summary strong{display:block;overflow:hidden;color:#172033;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.report-grid-main{grid-template-columns:minmax(0,1.45fr) minmax(330px,1fr)}.report-grid-secondary{grid-template-columns:1fr 1fr}.monthly-trend{min-height:290px;display:flex;flex-direction:column}.trend-legend{display:flex;justify-content:flex-end;gap:15px;color:#64748b;font-size:12px}.trend-legend span{display:inline-flex;align-items:center;gap:5px}.trend-legend i{width:9px;height:9px;border-radius:3px}.trend-legend i.income,.trend-bars i.income{background:#10b981}.trend-legend i.expense,.trend-bars i.expense{background:#f87171}.trend-chart{height:250px;margin-top:13px;padding:12px 8px 0;border-bottom:1px solid #dce3eb;display:grid;grid-template-columns:repeat(6,1fr);align-items:end;gap:13px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 32%,#edf0f3 33%,transparent 34%)}.trend-month{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px}.trend-bars{width:100%;height:calc(100% - 24px);display:flex;align-items:flex-end;justify-content:center;gap:5px}.trend-bars i{width:min(20px,38%);min-height:2px;border-radius:5px 5px 1px 1px;transition:height .3s ease}.trend-month b{color:#64748b;font-size:11.5px}.report-bars{min-height:220px;display:flex;flex-direction:column;justify-content:center;gap:17px}.report-bars>div>div:first-child{margin-bottom:6px;display:flex;align-items:center;justify-content:space-between;gap:10px}.report-bars span{color:#475569;font-size:13px;font-weight:700}.report-bars strong{font-size:13px}.report-bars small{display:block;margin-top:4px;color:#94a3b8;font-size:11px}.report-bar-track{height:9px;overflow:hidden;border-radius:10px;background:#eef2f7}.report-bar-track i{display:block;height:100%;min-width:3px;border-radius:inherit}.receivable-note{margin-top:12px;padding:11px 12px;border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#047857;background:#ecfdf5}.receivable-note span{font-size:12.5px;font-weight:700}.receivable-note strong{font-size:15px}@media(max-width:1100px){.report-month-summary{grid-template-columns:repeat(3,1fr)}.report-month-summary>div{border-right:0}.report-grid-main,.report-grid-secondary{grid-template-columns:1fr}}@media(max-width:700px){.report-month-summary{grid-template-columns:1fr 1fr}.report-month-summary>div{padding:5px}.trend-chart{height:210px;gap:7px;padding-inline:2px}.trend-bars{gap:3px}}@media(max-width:430px){.report-month-summary{grid-template-columns:1fr}}.report-dashboard{--report-green:#10985b;--report-red:#e11d2e;--report-blue:#1677ff;--report-orange:#f97316;--report-line:#e8edf3;color:#15213a}.archived-balance{min-height:265px;padding:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-radius:10px;background:linear-gradient(180deg,#f8fbff,#eef6ff)}.archived-balance span{color:#64748b;font-size:12px}.archived-balance strong{margin:8px 0;color:#1677ff;font-size:25px}.archived-balance small{max-width:360px;color:#7c879a;font-size:11px;line-height:1.55}.report-cycle-setting{margin-bottom:10px;padding:14px 16px;display:grid;grid-template-columns:minmax(240px,1fr) auto auto;align-items:center;gap:14px;border:1px solid #dbe8ff;border-radius:12px;background:linear-gradient(135deg,#f8fbff,#eef6ff)}.report-cycle-setting>div{display:flex;flex-direction:column;gap:3px}.report-cycle-setting>div>span,.report-cycle-setting label>span{color:#64748b;font-size:11px}.report-cycle-setting strong{font-size:16px}.report-cycle-setting small{color:#718096;font-size:10.5px}.report-cycle-setting label{display:flex;flex-direction:column;gap:4px}.report-cycle-setting select{min-width:130px;padding:8px 10px;border:1px solid #ccd8e8;border-radius:8px;background:#fff}.report-cycle-setting button{align-self:end;white-space:nowrap}.report-cycle-setting button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:700px){.report-cycle-setting{grid-template-columns:1fr 1fr}.report-cycle-setting>div{grid-column:1/-1}.report-cycle-setting button{width:100%}}.report-dashboard .report-toolbar{min-height:64px;margin-bottom:12px;padding:12px 16px;border:1px solid #e8edf3;background:#fff;color:#15213a;box-shadow:0 5px 22px #0f172a0a}.report-dashboard .report-toolbar strong{font-size:18px}.report-dashboard .report-toolbar span,.report-dashboard .report-toolbar label{color:#718096}.report-dashboard .report-toolbar input{border-color:#dde4ec;background:#f8fafc}.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.report-kpi{min-width:0;min-height:128px;padding:18px;display:flex;align-items:flex-start;gap:14px;border:1px solid #e8edf3;border-radius:12px;background:#fff;box-shadow:0 6px 24px #0f172a0b}.report-kpi-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:50%}.report-kpi-icon svg{width:24px;height:24px;stroke-width:2.3}.report-kpi>div{min-width:0;display:flex;flex-direction:column}.report-kpi>div>span{margin:4px 0 8px;color:#45516a;font-size:14px}.report-kpi strong{overflow:hidden;font-size:23px;line-height:1.12;text-overflow:ellipsis;white-space:nowrap}.report-kpi small{margin-top:10px;color:#718096;font-size:11.5px;font-weight:600}.report-kpi small.good{color:#10985b}.report-kpi small.bad{color:#e11d2e}.report-kpi.income .report-kpi-icon{color:#10985b;background:#e3f7eb}.report-kpi.income strong{color:#09884f}.report-kpi.expense .report-kpi-icon{color:#e11d2e;background:#fee9eb}.report-kpi.expense strong{color:#df1026}.report-kpi.saving .report-kpi-icon{color:#1677ff;background:#e8f1ff}.report-kpi.saving strong{color:#1265c5}.report-kpi.ratio .report-kpi-icon{color:#f97316;background:#fff0e7}.report-kpi.ratio strong{color:#ef5b0c}.report-showcase-grid{display:grid;gap:12px}.report-showcase-main{grid-template-columns:minmax(0,1.45fr) minmax(370px,1fr)}.report-showcase-bottom{grid-template-columns:minmax(0,1.15fr) minmax(390px,1fr)}.report-dashboard .panel{margin-top:0;padding:15px 17px;border-color:#e7ebf0;border-radius:12px;box-shadow:0 6px 24px #0f172a0a}.report-dashboard .panel-head{margin-bottom:7px}.report-dashboard .panel h2{font-size:17px}.report-showcase-bottom{margin-top:12px}.report-chart-legend{height:28px;display:flex;align-items:center;justify-content:flex-end;gap:18px;color:#667085;font-size:11.5px}.report-chart-legend span{display:flex;align-items:center;gap:6px}.report-chart-legend i{width:10px;height:10px;border-radius:50%}.report-chart-legend i.income{background:#33ae67}.report-chart-legend i.expense{background:#ff710c}.weekly-plot{height:260px;position:relative;padding:14px 5px 28px 60px}.weekly-grid{position:absolute;top:14px;right:5px;bottom:28px;left:0;display:flex;flex-direction:column;justify-content:space-between;color:#7c879a;font-size:10px}.weekly-grid:after{content:"";position:absolute;left:60px;right:0;inset-block:0;background:repeating-linear-gradient(to bottom,#e8edf3 0,#e8edf3 1px,transparent 1px,transparent 50%);pointer-events:none}.weekly-grid span{position:relative;z-index:1;transform:translateY(-5px)}.weekly-columns{height:100%;position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;gap:12px;border-bottom:1px solid #dbe2ea}.weekly-column{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.weekly-bars{width:100%;height:calc(100% - 25px);display:flex;align-items:flex-end;justify-content:center;gap:7px}.weekly-bars i{width:min(38px,38%);min-height:0;position:relative;border-radius:5px 5px 1px 1px;transition:height .25s ease}.weekly-bars i.income{background:linear-gradient(180deg,#3dbb73,#1f9d59)}.weekly-bars i.expense{background:linear-gradient(180deg,#ff7b18,#f35d00)}.weekly-bars b{position:absolute;left:50%;top:-17px;transform:translate(-50%);color:#354158;font-size:9px;white-space:nowrap}.weekly-column>span{height:22px;padding-top:7px;color:#667085;font-size:10.5px}.category-mode{height:33px;display:flex;justify-content:flex-end}.category-mode button{padding:7px 14px;border:0;background:#f5f6f8;color:#667085;font-size:11px}.category-mode button:first-child{border-radius:8px 0 0 8px}.category-mode button:last-child{border-radius:0 8px 8px 0}.category-mode button.active{color:#f05f11;background:#fff0e7}.spending-category-body{min-height:255px;display:grid;grid-template-columns:180px minmax(190px,1fr);align-items:center;gap:20px}.spending-donut{width:178px;height:178px;display:grid;place-items:center;border-radius:50%;transform:rotate(-2deg)}.spending-donut:after{content:"";width:99px;height:99px;position:absolute;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #f5f5f5}.spending-donut>div{max-width:90px;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;transform:rotate(2deg)}.spending-donut span{color:#7b8495;font-size:10px}.spending-donut strong{margin-top:4px;font-size:14px;line-height:1.25}.spending-list{display:flex;flex-direction:column;gap:13px}.spending-list>div{display:grid;grid-template-columns:10px minmax(70px,1fr) auto 43px;align-items:center;gap:8px;font-size:11px}.spending-list i{width:10px;height:10px;border-radius:50%}.spending-list span{overflow:hidden;color:#5d687c;text-overflow:ellipsis;white-space:nowrap}.spending-list b{text-align:right}.spending-list small{text-align:right;color:#68758a}.balance-trend{min-height:265px;position:relative}.balance-trend svg{width:100%;height:265px;overflow:visible}.balance-trend svg text{fill:#7c879a;font-size:9px}.balance-grid line{stroke:#e8edf3;stroke-width:1}.balance-trend circle{fill:#1677ff;stroke:#fff;stroke-width:1.5}.balance-day{font-size:8.5px!important}.balance-latest{position:absolute;right:12px;top:5px;padding:7px 9px;display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:7px;background:#fffffff0;box-shadow:0 3px 10px #0f172a14}.balance-latest span{color:#748096;font-size:9px}.balance-latest strong{margin-top:2px;font-size:11px}.largest-transactions{min-height:265px}.largest-table{display:flex;flex-direction:column}.largest-head,.largest-row{display:grid;grid-template-columns:82px minmax(105px,.8fr) minmax(130px,1.3fr) minmax(105px,.7fr);align-items:center;gap:8px}.largest-head{padding:9px 10px;border-radius:7px;background:#f5f7fa;color:#667085;font-size:10.5px}.largest-row{min-height:44px;padding:7px 10px;border-bottom:1px solid #edf0f4;color:#526077;font-size:10.5px}.largest-row>span:nth-child(2){display:flex;align-items:center;gap:7px}.largest-row>span:nth-child(2) i{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#fff1e8;font-size:13px;font-style:normal}.largest-row>span:nth-child(3){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.largest-row strong{text-align:right;font-size:11.5px;white-space:nowrap}.largest-row strong.positive{color:#079455}.largest-row strong.negative{color:#e11d2e}.report-financial-snapshot{margin-top:12px;padding:13px 15px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border:1px solid #e7ebf0;border-radius:12px;background:#fff;box-shadow:0 6px 24px #0f172a0a}.report-financial-snapshot>div{min-width:0;padding:3px 12px;border-right:1px solid #edf0f4}.report-financial-snapshot>div:last-child{border-right:0}.report-financial-snapshot span{display:block;margin-bottom:5px;color:#718096;font-size:10.5px}.report-financial-snapshot strong{display:block;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.report-cashflow-section{margin-top:12px}.report-cashflow-section .panel{width:100%}.monthly-cashflow{min-width:0}.monthly-cashflow-top{min-height:34px;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:14px;color:#8a94a6;font-size:10.5px}.monthly-cashflow-top>span{line-height:1.4}.monthly-cashflow-top>small{justify-self:end;color:#9aa3b2;font-size:9.5px}.cashflow-legend{display:flex;align-items:center;justify-content:center;gap:18px;color:#64748b;font-size:10.5px}.cashflow-legend span{display:flex;align-items:center;gap:6px}.cashflow-legend i,.cashflow-totals span i{width:9px;height:9px;border-radius:50%}.cashflow-chart{width:100%;overflow:hidden}.cashflow-chart svg{width:100%;height:330px;display:block;overflow:visible}.cashflow-grid line{stroke:#e8edf3;stroke-width:1}.cashflow-grid text,.cashflow-day{fill:#7e899c;font-size:9.5px}.cashflow-series path{stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}.cashflow-series circle{stroke:#fff;stroke-width:1.2}.cashflow-totals{display:grid;grid-template-columns:repeat(3,1fr);margin-top:3px;padding:14px 2px 2px;border-top:1px solid #edf1f5}.cashflow-totals>div{min-width:0;padding:0 20px;border-right:1px solid #edf1f5}.cashflow-totals>div:last-child{border-right:0}.cashflow-totals span{display:flex;align-items:center;gap:7px;color:#667085;font-size:11px}.cashflow-totals span i.income{background:#20b46a}.cashflow-totals span i.expense{background:#ff7417}.cashflow-totals span i.balance{background:#287cff}.cashflow-totals strong{display:block;margin:6px 0 4px;color:#17213a;font-size:18px}.cashflow-totals small{color:#7c879a;font-size:10px}.cashflow-totals small.good{color:#10985b}.cashflow-totals small.bad{color:#e11d2e}@media(max-width:1180px){.report-kpis{grid-template-columns:1fr 1fr}.report-showcase-main,.report-showcase-bottom{grid-template-columns:1fr}.report-financial-snapshot{grid-template-columns:repeat(3,1fr)}.report-financial-snapshot>div:nth-child(3){border-right:0}.report-financial-snapshot>div:nth-child(-n+3){padding-bottom:10px}}@media(max-width:700px){.report-dashboard .report-toolbar{flex-direction:row;align-items:center}.report-dashboard .report-toolbar>div span{display:none}.report-dashboard .report-toolbar label{width:auto;flex-direction:column;align-items:flex-start;gap:2px}.report-dashboard .report-toolbar input{width:140px}.report-kpis{gap:8px}.report-kpi{min-height:104px;padding:12px;gap:10px}.report-kpi-icon{width:38px;height:38px;flex-basis:38px}.report-kpi-icon svg{width:20px}.report-kpi>div>span{margin:1px 0 5px;font-size:11.5px}.report-kpi strong{font-size:17px}.report-kpi small{margin-top:6px;font-size:9px}.report-dashboard .panel{padding:13px}.weekly-plot{height:230px;padding-left:43px}.weekly-grid:after{left:43px}.weekly-bars{gap:3px}.weekly-bars b{display:none}.spending-category-body{grid-template-columns:145px minmax(150px,1fr);gap:12px}.spending-donut{width:142px;height:142px}.spending-donut:after{width:80px;height:80px}.spending-list>div{grid-template-columns:9px minmax(62px,1fr) auto;gap:6px}.spending-list small{display:none}.report-financial-snapshot{grid-template-columns:1fr 1fr}.report-financial-snapshot>div{border-right:0;padding:6px}.largest-head,.largest-row{grid-template-columns:70px minmax(90px,1fr) minmax(100px,1.2fr) 100px}}@media(max-width:700px){.monthly-cashflow-top{grid-template-columns:1fr auto}.monthly-cashflow-top>span{display:none}.monthly-cashflow-top>small{grid-column:2}.cashflow-legend{justify-content:flex-start;gap:12px}.cashflow-chart{overflow-x:auto}.cashflow-chart svg{min-width:720px;height:285px}.cashflow-totals{grid-template-columns:1fr}.cashflow-totals>div{padding:10px 5px;border-right:0;border-bottom:1px solid #edf1f5}.cashflow-totals>div:last-child{border-bottom:0}.cashflow-totals strong{font-size:17px}}@media(max-width:480px){.report-dashboard .report-toolbar{align-items:flex-start;flex-direction:column}.report-dashboard .report-toolbar label{width:100%;flex-direction:row;align-items:center}.report-dashboard .report-toolbar input{width:auto;flex:1}.report-kpis{grid-template-columns:1fr}.report-kpi{min-height:94px}.spending-category-body{grid-template-columns:1fr;justify-items:center}.spending-list{width:100%}.largest-transactions{overflow-x:auto}.largest-table{min-width:520px}.balance-trend svg{min-width:560px}.balance-trend{overflow-x:auto}.report-financial-snapshot{grid-template-columns:1fr 1fr}}.finance-analysis{display:grid;grid-template-columns:245px minmax(0,1fr);gap:14px;margin:-2px -4px 0;color:#17213a}.analysis-sidebar,.analysis-card{border:1px solid #e5eaf1;border-radius:10px;background:#fff;box-shadow:0 4px 16px #0f172a09}.analysis-sidebar{padding:15px;align-self:start}.analysis-main{min-width:0}.analysis-month{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.analysis-month>div:first-child{display:flex;flex-direction:column;gap:6px}.analysis-month strong{font-size:17px}.analysis-month span{display:flex;align-items:center;gap:6px;color:#758197;font-size:10.5px}.analysis-month>div:last-child{display:flex;gap:4px}.analysis-month button{width:27px;height:27px;padding:0;border:1px solid #e6eaf0;border-radius:6px;display:grid;place-items:center;color:#7c879a;background:#fff}.analysis-month button svg{width:14px}.saving-ring{--saving:0%;width:148px;height:148px;margin:20px auto 13px;padding:13px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#10b981 var(--saving),#e6edf4 0)}.saving-ring:before{content:"";width:112px;height:112px;position:absolute;border-radius:50%;background:#fff}.saving-ring>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center}.saving-ring strong{font-size:28px;line-height:1}.saving-ring span{margin-top:7px;color:#5f6c82;font-size:11px}.saving-ring small{margin-top:4px;color:#a0a8b6;font-size:9.5px}.saving-note{margin-bottom:14px;padding:10px 11px;border-radius:8px;display:flex;align-items:center;gap:9px;color:#b45309;background:#fff7e6;font-size:10.5px;font-weight:700;line-height:1.35}.saving-note.good{color:#07864e;background:#eaf9f0}.saving-note svg{flex:none}.current-balance{margin-bottom:17px;padding:12px;border:1px solid #e9edf3;border-radius:9px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.current-balance>svg:first-child{padding:6px;box-sizing:content-box;border-radius:7px;color:#4776e6;background:#edf3ff}.current-balance div{min-width:0;display:flex;flex-direction:column;gap:3px}.current-balance span{color:#7a8699;font-size:10px}.current-balance strong{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.current-balance>svg:last-child{color:#a0a8b6}.budget-block>div:first-child{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.budget-block>div:first-child strong{font-size:13px}.budget-block>div:first-child small{color:#7f8a9d;font-size:9.5px}.budget-item{position:relative;margin-bottom:14px;padding-left:38px}.budget-item>div:first-child{display:flex;align-items:center;gap:8px}.budget-icon{width:29px;height:29px;position:absolute;left:0;top:0;border-radius:50%;display:grid;place-items:center;font-size:13px}.budget-item b{font-size:11px}.budget-item>small{display:block;margin:3px 0 5px;color:#748095;font-size:9px}.budget-item>div:nth-of-type(2){height:5px;overflow:hidden;border-radius:999px;background:#e9edf3}.budget-item>div:nth-of-type(2) i{display:block;height:100%;border-radius:inherit}.budget-item>em{position:absolute;right:0;top:3px;color:#657187;font-size:9.5px;font-style:normal;font-weight:700}.create-budget{width:100%;padding:9px;border:0;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:6px;color:#fff;background:#ff7a18;font-size:11px;font-weight:700}.analysis-header{min-height:58px;margin-bottom:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.analysis-header h2{margin:0;font-size:23px;line-height:1.15}.analysis-header p{margin:5px 0 0;color:#7b8799;font-size:10.5px}.analysis-header>div:last-child{display:flex;gap:8px}.analysis-header label{height:34px;padding:0 9px;border:1px solid #e0e6ed;border-radius:7px;display:flex;align-items:center;gap:6px;background:#fff}.analysis-header input{width:125px;padding:0;border:0;outline:0;color:#344054;background:transparent;font-size:10.5px}.analysis-header button{height:34px;padding:0 13px;border:0;border-radius:7px;display:flex;align-items:center;gap:7px;color:#fff;background:#ff7417;font-size:10.5px;font-weight:700}.analysis-card{padding:13px 15px}.analysis-card-title,.analysis-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.analysis-card-title>*,.analysis-card-head>div{display:flex;flex-direction:column;gap:3px}.analysis-card-title strong,.analysis-card-head strong{font-size:14px}.analysis-card-title small,.analysis-card-head small{color:#8792a5;font-size:9.5px}.cashflow-card .monthly-cashflow-top{margin-top:-22px;pointer-events:none}.cashflow-card .monthly-cashflow-top>span{visibility:hidden}.cashflow-card .cashflow-chart svg{height:258px}.cashflow-card .cashflow-totals{padding-top:10px}.cashflow-card .cashflow-totals strong{font-size:15px}.analysis-middle{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:10px;margin-top:10px}.analysis-card-head select{padding:6px 24px 6px 8px;border:1px solid #e1e6ed;border-radius:6px;color:#5e6a7f;background:#fff;font-size:9.5px}.analysis-card-head>span{color:#9aa3b1;font-size:9px}.expense-rows{margin-top:13px;display:flex;flex-direction:column;gap:10px}.expense-row{display:grid;grid-template-columns:27px minmax(58px,.7fr) 84px minmax(80px,1fr) 38px;align-items:center;gap:7px;color:#556176;font-size:9.5px}.expense-symbol{width:25px;height:25px;border-radius:50%;display:grid;place-items:center}.expense-row>b{text-align:right;color:#303b50;font-size:9.5px}.expense-row>i{height:8px;overflow:hidden;border-radius:3px;background:#edf1f5}.expense-row>i em{display:block;height:100%;border-radius:inherit}.expense-row>small{text-align:right;color:#69758a;font-size:9px}.comparison-legend{height:27px;display:flex;justify-content:flex-end;align-items:center;gap:12px;color:#677388;font-size:8.5px}.comparison-legend span{display:flex;align-items:center;gap:4px}.comparison-legend i{width:7px;height:7px;border-radius:50%}.comparison-legend .income,.comparison-group i.income{background:#1fb96b}.comparison-legend .expense,.comparison-group i.expense{background:#ff7417}.comparison-legend .saving,.comparison-group i.saving{background:#287cff}.comparison-chart{height:168px;position:relative;padding:8px 2px 22px 33px}.comparison-chart:after{content:"";position:absolute;left:33px;right:2px;top:8px;bottom:22px;background:repeating-linear-gradient(to bottom,#e9edf2 0,#e9edf2 1px,transparent 1px,transparent 50%);pointer-events:none}.comparison-axis{position:absolute;left:0;top:5px;bottom:19px;display:flex;flex-direction:column;justify-content:space-between;color:#8b95a6;font-size:8px}.comparison-groups{height:100%;position:relative;z-index:1;display:grid;grid-template-columns:repeat(6,1fr);align-items:end}.comparison-group{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.comparison-group>div{height:calc(100% - 18px);display:flex;align-items:flex-end;gap:3px}.comparison-group i{width:9px;min-height:2px;border-radius:2px 2px 0 0}.comparison-group>span{height:16px;padding-top:5px;color:#7a8598;font-size:8px;white-space:nowrap}.recent-report,.recent-report-table{margin-top:10px}.recent-report-head,.recent-report-row{display:grid;grid-template-columns:82px minmax(130px,1.2fr) minmax(100px,.8fr) minmax(105px,.8fr) 115px;align-items:center;gap:8px}.recent-report-head{padding:7px 10px;border-radius:6px;background:#f7f8fa;color:#7a8598;font-size:8.5px}.recent-report-row{min-height:33px;padding:5px 10px;border-bottom:1px solid #eef1f4;color:#59667a;font-size:9px}.recent-report-row>span:nth-child(2),.recent-report-row>span:nth-child(4){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-report-row>span:nth-child(3){display:flex;align-items:center;gap:6px}.recent-report-row>span:nth-child(3) i{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#f1f5f9;font-size:10px;font-style:normal}.recent-report-row strong{text-align:right;font-size:9.5px}.recent-report-row .positive{color:#079455}.recent-report-row .negative{color:#f05b18}@media(max-width:1180px){.finance-analysis{grid-template-columns:220px minmax(0,1fr)}.analysis-middle{grid-template-columns:1fr}.cashflow-card .cashflow-chart{overflow-x:auto}.cashflow-card .cashflow-chart svg{min-width:780px}}@media(max-width:800px){.finance-analysis{grid-template-columns:1fr;margin:0}.analysis-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:10px}.analysis-month,.budget-block{grid-column:1/-1}.saving-ring{width:126px;height:126px;margin:5px auto}.saving-ring:before{width:96px;height:96px}.saving-ring strong{font-size:23px}.saving-note,.current-balance{margin:0}.analysis-header{align-items:stretch;flex-direction:column}.analysis-header>div:last-child{width:100%}.analysis-header label{flex:1}.analysis-header input{width:100%}.analysis-header button{white-space:nowrap}.cashflow-card .monthly-cashflow-top{margin-top:0}.cashflow-card .monthly-cashflow-top>span{display:none}.recent-report{overflow-x:auto}.recent-report-table{min-width:670px}}@media(max-width:480px){.analysis-sidebar{grid-template-columns:1fr}.analysis-month,.budget-block{grid-column:auto}.analysis-header>div:last-child{flex-direction:column}.analysis-header button{justify-content:center}.analysis-middle{grid-template-columns:1fr}.expense-row{grid-template-columns:27px minmax(58px,1fr) 75px 36px}.expense-row>i{grid-column:2/5}.comparison-chart{min-width:430px}.month-comparison{overflow-x:auto}.cashflow-card .cashflow-totals{grid-template-columns:1fr}.recent-report{padding-bottom:5px}}.calendar-page{display:flex;flex-direction:column;gap:12px}.calendar-reminder-hero{position:relative;overflow:hidden;padding:18px;display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:16px;color:#fff;border-radius:14px;background:linear-gradient(125deg,#0f172a,#172554 56%,#1d4ed8);box-shadow:0 14px 32px #1e40af29}.calendar-reminder-hero:after{content:"";position:absolute;width:220px;height:220px;right:-75px;top:-130px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 34px #ffffff0a}.reminder-hero-icon{width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:13px;background:#ffffff1f}.reminder-hero-copy{min-width:0}.reminder-hero-copy>span{font-size:10px;font-weight:800;letter-spacing:.09em;color:#bfdbfe}.reminder-hero-copy h2{margin:3px 0 4px;font-size:18px}.reminder-hero-copy p{margin:0;color:#dbeafe;font-size:12px}.reminder-controls{display:flex;gap:8px;z-index:1}.reminder-controls label{display:flex;flex-direction:column;gap:4px}.reminder-controls label>span{font-size:10px;color:#bfdbfe}.reminder-controls select,.reminder-controls input{height:36px;padding:0 9px;border:1px solid rgba(255,255,255,.23);border-radius:8px;color:#fff;background:#0f172a52;outline:none}.reminder-controls select option{color:#111827;background:#fff}.reminder-actions{display:flex;align-items:center;gap:7px;z-index:1}.calendar-reminder-hero .primary,.reminder-enabled{height:36px;border:1px solid rgba(255,255,255,.22);border-radius:8px;padding:0 11px;display:flex;align-items:center;gap:6px;color:#0f172a;background:#fff;font-size:12px;font-weight:700}.reminder-enabled{color:#dcfce7;background:#16a34a4d}.calendar-reminder-hero .reminder-test{width:auto;height:36px;margin:0;padding:0 10px;color:#fff;background:#ffffff1a;border:1px solid rgba(255,255,255,.22)}.calendar-reminder-hero .reminder-test:disabled{opacity:.45;cursor:not-allowed}.reminder-status{grid-column:2/-1;margin:0;color:#dbeafe;font-size:11px}.calendar-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.calendar-summary>div{padding:14px 15px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 12px;border:1px solid #e5eaf2;border-radius:12px;background:#fff}.calendar-summary span{color:#64748b;font-size:11px}.calendar-summary strong{grid-row:1/3;grid-column:2;font-size:20px;color:#0f172a}.calendar-summary small{max-width:190px;overflow:hidden;color:#94a3b8;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.calendar-layout{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(480px,1.1fr);gap:12px;align-items:start}.calendar-board{padding:15px;border:1px solid #edf0f3;border-radius:12px;background:#fff}.calendar-toolbar{height:34px;display:flex;align-items:center;gap:6px;margin-bottom:10px}.calendar-toolbar h2{min-width:145px;margin:0;text-align:center;font-size:15px}.calendar-toolbar .icon{padding:5px}.calendar-today{margin-left:auto;padding:7px 10px;border:0;border-radius:7px;color:#2563eb;background:#eff6ff;font-size:11px;font-weight:700}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-weekdays{margin-bottom:5px}.calendar-weekdays span{padding:4px;text-align:center;color:#94a3b8;font-size:10px;font-weight:700}.calendar-day{position:relative;min-height:54px;padding:7px;border:1px solid #edf0f3;border-radius:8px;background:#fff}.calendar-day.blank{border-color:transparent;background:transparent}.calendar-day b{font-size:11px;color:#475569}.calendar-day.past{background:#fafafa}.calendar-day.past b{color:#a1a1aa}.calendar-day.today{border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb}.calendar-day.today b{width:22px;height:22px;display:grid;place-items:center;margin:-2px;color:#fff;border-radius:50%;background:#2563eb}.calendar-day>i{position:absolute;left:7px;right:7px;bottom:7px;display:flex;gap:3px}.calendar-day em,.calendar-legend i{width:7px;height:7px;border-radius:50%;background:#2563eb}.calendar-day em.statement,.calendar-legend i.statement{background:#f59e0b}.calendar-day>small{position:absolute;right:6px;bottom:4px;color:#64748b;font-size:8px}.calendar-legend{display:flex;gap:14px;margin-top:10px;color:#64748b;font-size:10px}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-layout>.panel{margin:0;max-height:475px;overflow:auto}.calendar-timeline>div{padding:9px 2px}.calendar-timeline>div>div{min-width:0}.calendar-timeline strong,.calendar-timeline small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-device-note{padding:11px 13px;display:flex;align-items:center;gap:9px;border:1px solid #dbeafe;border-radius:10px;color:#475569;background:#eff6ff;font-size:11px}.calendar-device-note svg{flex:none;color:#2563eb}.apple-calendar-card{padding:15px 17px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;border:1px solid #dce4ef;border-radius:13px;background:linear-gradient(135deg,#fff,#f8fafc)}.apple-calendar-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(145deg,#ff5a5f,#ef4444);box-shadow:0 8px 18px #ef444433}.apple-calendar-card>div:nth-child(2)>span{color:#ef4444;font-size:9.5px;font-weight:800;letter-spacing:.1em}.apple-calendar-card h2{margin:2px 0 3px;font-size:15px}.apple-calendar-card p{margin:0;color:#64748b;font-size:11px}.apple-calendar-actions{display:flex;gap:7px}.apple-calendar-actions .outline{width:auto;margin:0;padding:8px 11px;display:flex;align-items:center;justify-content:center;gap:6px}.apple-calendar-actions .primary{white-space:nowrap}@media(max-width:1050px){.calendar-reminder-hero{grid-template-columns:auto 1fr auto}.reminder-controls{grid-column:2}.reminder-actions{grid-column:3;grid-row:1/3}.calendar-layout{grid-template-columns:1fr}.calendar-layout>.panel{max-height:none}.reminder-status{grid-column:2/3}}@media(max-width:700px){.calendar-page{gap:9px}.calendar-reminder-hero{padding:14px;grid-template-columns:auto 1fr;gap:11px}.reminder-hero-icon{width:42px;height:42px}.reminder-hero-copy h2{font-size:16px}.reminder-controls{grid-column:1/-1}.reminder-controls label{flex:1}.reminder-controls select,.reminder-controls input{width:100%}.reminder-actions{grid-column:1/-1;grid-row:auto}.reminder-actions>*{flex:1;justify-content:center}.reminder-status{grid-column:1/-1}.calendar-summary{grid-template-columns:1fr 1fr}.calendar-summary>div:last-child{grid-column:1/-1}.apple-calendar-card{grid-template-columns:auto 1fr}.apple-calendar-actions{grid-column:1/-1}.apple-calendar-actions>*{flex:1}.calendar-layout{display:block}.calendar-board{padding:11px;margin-bottom:9px}.calendar-weekdays,.calendar-grid{gap:3px}.calendar-day{min-height:46px;padding:5px}.calendar-day>i{left:5px;right:5px;bottom:5px}.calendar-day em{width:6px;height:6px}.calendar-layout>.panel{margin-top:0}.calendar-timeline>div{gap:8px}.calendar-timeline>div>b{max-width:100px;text-align:right}.calendar-device-note{align-items:flex-start}}@media(max-width:390px){.calendar-summary{grid-template-columns:1fr}.calendar-summary>div:last-child{grid-column:auto}.calendar-reminder-hero{grid-template-columns:1fr}.reminder-hero-icon{display:none}.reminder-controls,.reminder-actions,.reminder-status{grid-column:auto}.calendar-day{min-height:42px}.calendar-toolbar h2{min-width:125px}.calendar-timeline>div>b{max-width:78px;font-size:11px}}html,body,#root,.app-shell{max-width:100%;min-width:0}body{overflow-x:hidden}main,header,.panel,.modal,.form-grid,.resolution-form,.resolution-fields,.resolution-field,.form-grid label{min-width:0}input,select,textarea{min-width:0;max-width:100%}.form-grid input,.form-grid select,.resolution-field input,.resolution-field select,.login-card input{display:block;width:100%;min-width:0;max-width:100%}.form-grid select,.resolution-field select{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal{overflow-x:hidden}.header-actions .refresh{width:36px;height:36px;padding:0;justify-content:center}@media(max-width:700px){.sidebar{inset:0 auto 0 0!important;width:min(82vw,290px)!important;height:100dvh!important;padding:calc(env(safe-area-inset-top,0px) + 12px) 10px calc(env(safe-area-inset-bottom,0px) + 12px)!important;transform:translate(-105%)!important;visibility:hidden;pointer-events:none;transition:transform .24s ease,visibility .24s ease;box-shadow:18px 0 42px #0206174d;z-index:70}.sidebar.open{transform:translate(0)!important;visibility:visible;pointer-events:auto}.sidebar .brand{min-height:44px;margin:0 0 10px!important;padding:5px 7px!important}.sidebar .brand-icon{display:grid!important}.sidebar .mobile-close{display:grid!important;margin-left:auto;color:#e2e8f0;background:#ffffff14}.sidebar nav{min-height:0;flex:1;flex-direction:column!important;gap:3px!important;overflow-x:hidden!important;overflow-y:auto}.sidebar nav button{width:100%!important;flex:none;padding:10px 11px!important;white-space:normal!important;font-size:14px!important}.sidebar nav button svg{display:block!important;flex:none}.sidebar .logout{display:flex!important;margin-top:10px}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:block!important;background:#0f172a7a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:65}main{width:100%!important;margin-left:0!important;padding:calc(env(safe-area-inset-top,0px) + 12px) 11px 28px!important;overflow-x:hidden}header{min-width:0;align-items:center;gap:9px;margin-bottom:12px!important}header>.menu-btn{width:38px;height:38px;display:grid!important;flex:none;padding:0;border:1px solid #e2e8f0;color:#334155;background:#fff;box-shadow:0 3px 12px #0f172a0f}header>div:nth-child(2){min-width:0;flex:1}header h1{overflow:hidden;font-size:21px!important;text-overflow:ellipsis;white-space:nowrap}header p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-actions{flex:none;gap:6px}.header-actions .refresh,.header-actions .privacy-toggle{width:36px;height:36px;padding:0;justify-content:center}.modal-bg{width:100vw;padding:0!important;overflow:hidden;align-items:flex-end!important}.modal{width:100%;max-width:100vw!important;max-height:min(90dvh,calc(100dvh - env(safe-area-inset-top,0px) - 8px))!important;border-radius:16px 16px 0 0!important;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.modal-head{width:100%;min-width:0;position:sticky;top:0;background:#fff;z-index:2}.modal-head h2{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-grid,.resolution-form{width:100%;grid-template-columns:minmax(0,1fr)!important;padding:12px!important;overflow-x:hidden}.form-grid>*{min-width:0;max-width:100%;grid-column:auto!important}.form-grid label,.resolution-field,.resolution-fields{width:100%;min-width:0;max-width:100%}.form-grid label>span,.resolution-field>span{max-width:100%;overflow-wrap:anywhere}.form-grid input,.form-grid select,.resolution-field input,.resolution-field select{width:100%!important;min-width:0!important;max-width:100%!important;font-size:16px!important}.form-grid input[type=date],.resolution-field input[type=date]{-moz-appearance:none;appearance:none;-webkit-appearance:none;min-height:42px}.form-actions,.resolution-actions{width:100%;min-width:0}.form-actions .primary,.resolution-actions .primary{max-width:100%;white-space:normal}.payment-hint{margin:12px 12px 0}}@media(max-width:380px){.sidebar{width:min(86vw,280px)!important}header{gap:7px}header h1{font-size:19px!important}header p{font-size:12px!important}}
