.global-dialog-padding .mat-mdc-dialog-container,.global-dialog-padding .mdc-dialog__surface{padding:var(--space-md)!important}.mat-mdc-dialog-container .mdc-dialog__surface{border-radius:var(--radius-lg)!important;border:1px solid var(--color-border)!important;box-shadow:var(--shadow-lg)!important}.dialog-header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border)}.dialog-header h2{font-size:14px;font-weight:500;color:var(--color-text);margin:0 0 2px}.dialog-header p{font-size:11px;color:var(--color-text-muted);margin:0}.dialog-content{padding:var(--space-lg)}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border);background:var(--color-bg)}.w-percent-10{width:10%}.w-percent-20{width:20%}.w-percent-25{width:25%}.w-percent-30{width:30%}.w-percent-40{width:40%}.w-percent-50{width:50%}.w-percent-100{width:100%}.m-0{margin:0}.mx-0{margin-left:0;margin-right:0}.my-0{margin-top:0;margin-bottom:0}.mt-0{margin-top:0}.mr-0{margin-right:0}.mb-0{margin-bottom:0}.ml-0{margin-left:0}.p-0{padding:0}.pb-0{padding-bottom:0}.gap-0{gap:0px}.m-2{margin:2px}.mx-2{margin-left:2px;margin-right:2px}.my-2{margin-top:2px;margin-bottom:2px}.mt-2{margin-top:2px}.mr-2{margin-right:2px}.mb-2{margin-bottom:2px}.ml-2{margin-left:2px}.p-2{padding:2px}.pb-2{padding-bottom:2px}.gap-2{gap:2px}.m-4{margin:4px}.mx-4{margin-left:4px;margin-right:4px}.my-4{margin-top:4px;margin-bottom:4px}.mt-4{margin-top:4px}.mr-4{margin-right:4px}.mb-4{margin-bottom:4px}.ml-4{margin-left:4px}.p-4{padding:4px}.pb-4{padding-bottom:4px}.gap-4{gap:4px}.m-8{margin:8px}.mx-8{margin-left:8px;margin-right:8px}.my-8{margin-top:8px;margin-bottom:8px}.mt-8{margin-top:8px}.mr-8{margin-right:8px}.mb-8{margin-bottom:8px}.ml-8{margin-left:8px}.p-8{padding:8px}.pb-8{padding-bottom:8px}.gap-8{gap:8px}.m-10{margin:10px}.mx-10{margin-left:10px;margin-right:10px}.my-10{margin-top:10px;margin-bottom:10px}.mt-10{margin-top:10px}.mr-10{margin-right:10px}.mb-10{margin-bottom:10px}.ml-10{margin-left:10px}.p-10{padding:10px}.pb-10{padding-bottom:10px}.gap-10{gap:10px}.m-12{margin:12px}.mx-12{margin-left:12px;margin-right:12px}.my-12{margin-top:12px;margin-bottom:12px}.mt-12{margin-top:12px}.mr-12{margin-right:12px}.mb-12{margin-bottom:12px}.ml-12{margin-left:12px}.p-12{padding:12px}.pb-12{padding-bottom:12px}.gap-12{gap:12px}.m-16{margin:16px}.mx-16{margin-left:16px;margin-right:16px}.my-16{margin-top:16px;margin-bottom:16px}.mt-16{margin-top:16px}.mr-16{margin-right:16px}.mb-16{margin-bottom:16px}.ml-16{margin-left:16px}.p-16{padding:16px}.pb-16{padding-bottom:16px}.gap-16{gap:16px}.m-20{margin:20px}.mx-20{margin-left:20px;margin-right:20px}.my-20{margin-top:20px;margin-bottom:20px}.mt-20{margin-top:20px}.mr-20{margin-right:20px}.mb-20{margin-bottom:20px}.ml-20{margin-left:20px}.p-20{padding:20px}.pb-20{padding-bottom:20px}.gap-20{gap:20px}.m-24{margin:24px}.mx-24{margin-left:24px;margin-right:24px}.my-24{margin-top:24px;margin-bottom:24px}.mt-24{margin-top:24px}.mr-24{margin-right:24px}.mb-24{margin-bottom:24px}.ml-24{margin-left:24px}.p-24{padding:24px}.pb-24{padding-bottom:24px}.gap-24{gap:24px}.m-32{margin:32px}.mx-32{margin-left:32px;margin-right:32px}.my-32{margin-top:32px;margin-bottom:32px}.mt-32{margin-top:32px}.mr-32{margin-right:32px}.mb-32{margin-bottom:32px}.ml-32{margin-left:32px}.p-32{padding:32px}.pb-32{padding-bottom:32px}.gap-32{gap:32px}.flex{display:flex}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-justify-center{justify-content:center}.flex-justify-flex-start{justify-content:flex-start}.flex-justify-flex-end{justify-content:flex-end}.flex-justify-space-between{justify-content:space-between}.flex-justify-space-around{justify-content:space-around}.flex-justify-space-evenly{justify-content:space-evenly}.flex-items-center{align-items:center}.flex-items-flex-start{align-items:flex-start}.flex-items-flex-end{align-items:flex-end}.flex-items-baseline{align-items:baseline}.flex-items-stretch{align-items:stretch}.text-capitalize{text-transform:capitalize}.form-group{display:flex;flex-direction:column;gap:4px;width:100%;margin-bottom:var(--space-md)}.form-group label{font-size:12px;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.3px}.form-group input,.form-group textarea{padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);outline:none;font-size:14px;color:var(--color-text);transition:border-color .15s ease}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-accent)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-light)}.form-group select{padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);outline:none;font-size:14px;color:var(--color-text);appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><polygon points='0,0 10,0 5,6' fill='%2364748b'/></svg>");background-repeat:no-repeat;background-position:right 10px center;background-size:8px 5px;transition:border-color .15s ease}.form-group select:focus{border-color:var(--color-accent)}.form-group select:invalid{color:var(--color-text-light)}.form-group small.error{font-size:10px;color:var(--color-danger)}.form-group small.hint{font-size:10px;color:var(--color-text-light)}.form-action{display:flex;gap:var(--space-sm);justify-content:flex-start;flex-direction:row-reverse;margin-top:var(--space-md)}button.btn-primary{padding:7px 14px;border:1px solid var(--color-accent);background:var(--color-accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;font-size:12px;font-weight:500;transition:all .15s ease}button.btn-primary:hover:not(:disabled){background:#0284c7;border-color:#0284c7}button.btn-primary:disabled{background:var(--color-text-light);border-color:var(--color-text-light);cursor:not-allowed}button.btn-secondary{padding:7px 14px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-md);cursor:pointer;font-size:12px;font-weight:500;transition:all .15s ease}button.btn-secondary:hover:not(:disabled){background:var(--color-border-light)}button.btn-secondary:disabled{color:var(--color-text-light);cursor:not-allowed}button.btn-danger{padding:7px 14px;border:1px solid var(--color-danger);background:var(--color-surface);color:var(--color-danger);border-radius:var(--radius-md);cursor:pointer;font-size:12px;font-weight:500;transition:all .15s ease}button.btn-danger:hover:not(:disabled){background:#fef2f2}button.btn-danger:disabled{opacity:.5;cursor:not-allowed}.text-primary{color:var(--color-accent)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-secondary{color:var(--color-text-muted)}.status-loan{padding:3px 8px;border-radius:var(--radius-sm);font-size:10px;font-weight:500;color:#fff;border:none;text-transform:uppercase;letter-spacing:.3px}.status-loan.settled{background:var(--color-success)}.status-loan.on_going{background:var(--color-warning)}.status-transaction{padding:3px 8px;border-radius:var(--radius-sm);font-size:10px;font-weight:500;color:#fff;border:none;text-transform:uppercase;letter-spacing:.3px}.status-transaction.debit{background:var(--color-accent)}.status-transaction.credit{background:var(--color-danger)}.status-transaction.loan_payment{background:var(--color-warning)}.status-transaction.saving{background:var(--color-success)}.status-expenses{padding:3px 8px;border-radius:var(--radius-sm);font-size:10px;font-weight:500;color:#fff;border:none;text-transform:uppercase;letter-spacing:.3px}.status-expenses.fixed{background:var(--color-accent)}.status-payment{padding:3px 8px;border-radius:var(--radius-sm);font-size:10px;font-weight:500;color:#fff;border:none;text-transform:uppercase;letter-spacing:.3px}.status-payment.paid{background:var(--color-success)}.status-payment.unpaid{background:var(--color-warning)}.status-payment.overdue{background:var(--color-danger)}.snackbar{border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:12px}.snackbar-success{background-color:var(--color-success);color:#fff}.snackbar-warning{background-color:var(--color-warning);color:#fff}.snackbar-danger{background-color:var(--color-danger);color:#fff}.snackbar-secondary{background-color:var(--color-text-light);color:var(--color-text)}.mat-mdc-snack-bar-container,.mat-mdc-snackbar-surface,.mdc-snackbar__surface{border-radius:var(--radius-md)!important;box-shadow:var(--shadow-md)!important;font-family:Inter,sans-serif!important}.app-table{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:var(--space-md)}.app-table .table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md);gap:var(--space-sm);flex-wrap:wrap}.app-table .table-header-right{display:flex;gap:5px;align-items:center}.app-table .table-header .title{flex:1;font-weight:500;font-size:14px;color:var(--color-text)}.app-table .table-header .date-filter{display:flex;align-items:center;gap:var(--space-sm)}.app-table .table-header .date-filter .date-field{display:flex;flex-direction:column;gap:2px}.app-table .table-header .date-filter .date-field label{font-size:10px;color:var(--color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.3px}.app-table .table-header .date-filter .date-field input[type=date]{padding:6px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:12px;color:var(--color-text);background:var(--color-surface);cursor:pointer;min-width:130px}.app-table .table-header .date-filter .date-field input[type=date]:focus{outline:none;border-color:var(--color-accent)}.app-table .table-header .search{display:flex;align-items:center}.app-table .table-header .search-input{padding:8px 10px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);width:180px;outline:none;font-size:12px;color:var(--color-text);transition:border-color .15s ease}.app-table .table-header .search-input:focus{border-color:var(--color-accent)}.app-table .table-header .search-input::placeholder{color:var(--color-text-light)}.app-table .table-header .clear{margin-left:4px;background:transparent;border:none;cursor:pointer;color:var(--color-text-light);font-size:12px}.app-table .table-header .clear:hover{color:var(--color-text)}.app-table .table-wrap{overflow:auto}.app-table .table-wrap table{width:100%;border-collapse:collapse;min-width:500px}.app-table .table-wrap table thead tr th{text-align:left;padding:10px 12px;font-size:12px;font-weight:500;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.3px}.app-table .table-wrap table thead tr th.sortable{cursor:pointer}.app-table .table-wrap table thead tr th.sortable:hover{color:var(--color-text)}.app-table .table-wrap table thead tr th .sort-indicator{margin-left:4px;font-size:9px}.app-table .table-wrap table thead tr th .sort-indicator .tri{display:inline-block;line-height:.6;opacity:.3}.app-table .table-wrap table thead tr th .sort-indicator .tri.active{opacity:1;color:var(--color-accent)}.app-table .table-wrap table tbody tr{cursor:pointer;transition:background .1s ease}.app-table .table-wrap table tbody tr:hover{background:var(--color-border-light)}.app-table .table-wrap table tbody tr td{padding:12px;border-bottom:1px solid var(--color-border-light);font-size:14px;color:var(--color-text)}.app-table .table-wrap .empty{text-align:center;padding:32px;color:var(--color-text-light);font-size:12px}.pagination{margin-top:var(--space-md);display:flex;justify-content:flex-end;align-items:center;gap:var(--space-sm);font-size:11px;color:var(--color-text-muted)}.pagination button{padding:5px 10px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;font-size:11px;transition:all .15s ease}.pagination button:hover:not(:disabled){background:var(--color-border-light)}.pagination button:disabled{color:var(--color-text-light);cursor:not-allowed}.loader{display:flex;align-items:center;justify-content:center;margin-top:var(--space-lg)}.context-menu{position:fixed;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 4px 12px #0000001a;border-radius:var(--radius-md);z-index:9999;min-width:140px;padding:4px}.context-menu button{width:100%;padding:8px 10px;background:none;border:none;text-align:left;cursor:pointer;font-size:12px;display:flex;align-items:center;gap:8px;border-radius:var(--radius-sm);color:var(--color-text);transition:background .1s ease}.context-menu button>mat-icon{font-size:14px;width:14px;height:14px;color:var(--color-accent)}.context-menu button:hover{background:var(--color-border-light)}@media (max-width: 640px){.app-table{padding:var(--space-sm);padding-bottom:100px}.app-table .table-header{flex-direction:column;gap:var(--space-sm);align-items:stretch}.app-table .table-header-right{flex-direction:column}.app-table .table-header-right>.search{width:100%}.app-table .table-header-right .search-input{width:100%}.app-table .table-header .date-filter{width:100%;justify-content:space-between}.app-table .table-header .date-filter .date-field{flex:1}.app-table .table-header .date-filter .date-field input[type=date]{width:100%;min-width:unset}.app-table .table-action{width:100%}.app-table .table-action>button{width:100%}.app-table .table-wrap table{min-width:100%}}:host{display:block;font-family:Inter,Poppins,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--color-text)}h1,h2,h3,h4,h5,h6,p,span,div,a,button,input,textarea,select,label,table,th,td,ul,ol,li{font-family:Inter,Poppins,-apple-system,BlinkMacSystemFont,sans-serif!important}:root{--color-primary: #475569;--color-primary-light: #64748b;--color-accent: #0ea5e9;--color-accent-light: #e0f2fe;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-bg: #f8fafc;--color-surface: #ffffff;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-text: #334155;--color-text-muted: #64748b;--color-text-light: #94a3b8;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 4px rgba(0, 0, 0, .06);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .08)}*{box-sizing:border-box}html,body{margin:0;font-family:Inter,Poppins,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0;font-weight:500;color:var(--color-text)}h1{font-size:22px}h2{font-size:18px}h3{font-size:16px}h4{font-size:14px}p{margin:0;color:var(--color-text-muted)}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}
