main{max-width:1220px}.heading{display:flex;justify-content:space-between;gap:20px;align-items:center}h1{font-size:clamp(34px,5vw,52px)}.filters{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.filters label{min-width:110px;flex:1}.filters .search{flex:2;min-width:190px}.filters input{padding:12px}.totals{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}.totals>div{background:#1b2527;border:1px solid #354143;border-radius:13px;padding:22px 18px}.totals span{color:#bac5c2;font-size:12px;display:block;margin-bottom:12px}.totals strong{font-size:clamp(17px,2vw,25px);font-weight:500}.totals .balance{border-color:#aa8a50}.balance strong{color:var(--gold)}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}.toolbar>span{margin-right:auto;color:#bdc7c3}.table-wrap{overflow-x:auto;border:1px solid #354143;border-radius:12px}table{border-collapse:collapse;width:100%;min-width:760px;text-align:left}th{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#b7c1be;background:#1b2527;padding:18px 14px}td{padding:18px 14px;border-top:1px solid #354143;font-size:13px;overflow-wrap:anywhere;max-width:240px}td small{display:block;color:#aab6b2;line-height:1.6;margin-top:5px}.income{color:#9ed8bc}.expense{color:#eab79d}.tag{font-size:11px;border:1px solid #52615a;border-radius:4px;display:inline-block;padding:4px 7px}.tag.pending{color:var(--gold);border-color:#94753e}.table-wrap button{padding:8px 12px;font-size:12px}dialog{width:min(780px,95vw);max-height:90vh;overflow-y:auto;border:1px solid #566263;border-radius:17px;padding:26px;background:#172123;color:#f5f2ec}dialog::backdrop{background:#050a0cd9}dialog h2{margin:0}dialog textarea{width:100%;background:#10191a;color:#fff;border:1px solid #566263;border-radius:7px;padding:14px;font:inherit}dialog .check{display:flex;align-items:center;gap:12px}dialog input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:var(--gold)}#formStatus{color:#f0ce8f}#files a{display:block;margin:12px 0;overflow-wrap:anywhere}#close{font-size:22px;padding:5px 12px}@media(max-width:650px){.totals{grid-template-columns:1fr 1fr;gap:10px}.totals>div{padding:18px 12px}.heading{align-items:flex-start;flex-direction:column}dialog .heading{flex-direction:row;align-items:center}.toolbar a{font-size:12px}.filters label{margin:8px 0}main{padding:0 18px}dialog{padding:20px}}
