*{box-sizing:border-box}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#172033;background:#f4f6fa;font-synthesis:none}html,body,#root{width:100%;min-height:100%;margin:0}body{min-width:320px;min-height:100vh;background:#f4f6fa;font-family:inherit}button,input,a{font:inherit}.page{width:100%;max-width:1500px;min-height:100vh;margin:0 auto;padding:35px 5%;font-family:inherit}.top{display:flex;align-items:center;gap:16px;margin-bottom:30px}.brand{display:flex;align-items:center;gap:16px}.brand-mark{width:55px;height:55px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:15px;background:#1e40af;color:#fff;font-size:19px;font-weight:850;letter-spacing:-1px;box-shadow:0 5px 14px #1e40af30}.brand>div:last-child{min-width:0;display:flex;flex-direction:column;justify-content:center}.eyebrow{margin:0 0 4px;color:#2563eb;font-size:10px;font-weight:850;letter-spacing:2px;line-height:1.2}.top h1{margin:0;color:#172033;font-size:26px;font-weight:800;letter-spacing:-.7px;line-height:1.2}.top p{margin:5px 0 0;color:#8993a5;font-size:13px;line-height:1.4}.panel{padding:25px;background:#fff;border:1px solid #e7ebf2;border-radius:16px;box-shadow:0 5px 25px #17203308}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}.search-box{height:45px;min-width:150px;flex:1;display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid #e1e6ee;border-radius:10px;background:#fff;transition:.2s}.search-box:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f615}.search-icon{color:#8c96a7;font-size:25px;line-height:1}.search-box input{width:100%;min-width:0;height:100%;border:none;outline:none;background:transparent;color:#172033;font-family:inherit;font-size:12px}.search-box input::placeholder{color:#a0a9b8}.clear-search{padding:0 3px;border:none;background:transparent;color:#8993a5;font-size:22px;cursor:pointer}.toolbar-actions{display:flex;align-items:center;gap:9px;flex-shrink:0}.input-button,.refresh-button,.menu-button{height:45px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;font-family:inherit;font-size:12px;font-weight:750;white-space:nowrap;text-decoration:none;cursor:pointer;transition:all .2s ease}.expense-button{border:1px solid #fed7aa;background:#fff7ed;color:#c2410c}.expense-button:hover{background:#ffedd5;border-color:#fdba74}.balance-button{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8}.balance-button:hover{background:#dbeafe;border-color:#93c5fd}.input-button{border:1px solid #1e40af;background:#1e40af;color:#fff;letter-spacing:.4px}.input-button:hover{background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 4px 12px #1e40af25}.refresh-button{border:1px solid #dbe2ec;background:#fff;color:#475569}.refresh-button span{font-size:18px;line-height:1}.refresh-button:hover{background:#f1f5f9;border-color:#cbd5e1}.refresh-button:disabled{opacity:.6;cursor:wait}.table-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.table-heading h2{margin:0;color:#172033;font-size:17px;font-weight:800}.table-heading p{margin:5px 0 0;color:#929bad;font-size:11px}.table-status{display:flex;align-items:center;gap:7px;color:#7c879b;font-size:11px;white-space:nowrap}.live-dot{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:#10b981;box-shadow:0 0 0 3px #10b98118}.table-wrapper{width:100%;overflow-x:auto;border:1px solid #e6ebf2;border-radius:10px}table{width:100%;min-width:850px;border-collapse:collapse;font-family:inherit;font-size:12px}thead{background:#f1f5f9}th{padding:15px 13px;color:#475569;text-align:left;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;border-bottom:1px solid #e2e8f0}td{padding:14px 13px;color:#334155;border-bottom:1px solid #e8edf3;white-space:nowrap;transition:background-color .15s}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{filter:brightness(.96)}.name-cell,.money-cell{font-weight:750}tbody tr[style*="rgb(245, 158, 11)"] td{color:#422006}tbody tr[style*="rgb(249, 168, 212)"] td{color:#831843}tbody tr[style*="rgb(153, 27, 27)"] td{color:#fff}.error-message{margin-bottom:18px;padding:15px;border:1px solid #fecaca;border-radius:10px;background:#fef2f2;color:#991b1b;font-size:12px;line-height:1.6}.loading{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;color:#929bad;font-size:12px}.loading p{margin:0}.spinner{width:30px;height:30px;border:3px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{height:120px;color:#929bad;text-align:center}.panel-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid #edf0f5;color:#929bad;font-size:10px}.legend{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:20px;padding:16px 18px;border:1px solid #e7ebf2;border-radius:11px;background:#fff;font-family:inherit}.legend-title{color:#475569;font-size:12px;font-weight:750}.legend>span:not(.legend-title){display:inline-flex;align-items:center;gap:7px;color:#475569;font-family:inherit;font-size:12px;font-weight:600;white-space:nowrap}.legend-color{width:14px;height:14px;display:inline-block;flex-shrink:0;border-radius:4px}.legend-color.orange{background:#f59e0b}.legend-color.pink{background:#f9a8d4}.legend-color.red{background:#991b1b}.page-footer{margin:22px 0 0;color:#a0a9b8;font-size:11px;text-align:center}@media(max-width:700px){.page{padding:22px 4%}.top{margin-bottom:22px}.brand-mark{width:48px;height:48px;font-size:17px}.top h1{font-size:22px}.panel{padding:17px 13px}.toolbar{flex-wrap:wrap;margin-bottom:22px}.search-box{flex-basis:100%}.toolbar-actions{width:100%;flex-wrap:wrap}.menu-button,.input-button,.refresh-button{flex:1}.table-heading{align-items:flex-start;flex-direction:column;gap:9px}.panel-footer{align-items:flex-start;flex-direction:column}.legend{gap:12px}}@media(max-width:380px){.top h1{font-size:19px}.top p{font-size:11px}.eyebrow{font-size:9px}.table-status{font-size:10px}.input-button,.refresh-button,.menu-button{padding:0 8px;font-size:10px}}
