/* Finance Forms */
.fin-form-card{background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:1.25rem;margin-bottom:1rem;box-shadow:0 1px 4px rgba(0,0,0,.02);}
.fin-summary-card{background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:1.25rem;margin-bottom:1rem;box-shadow:0 1px 4px rgba(0,0,0,.02);}
.fin-history-card{background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:1.25rem;box-shadow:0 1px 4px rgba(0,0,0,.02);}

/* Month nav */
.fin-month-nav{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:.85rem;}
.fin-month-btn{width:32px;height:32px;border:1.5px solid var(--border);border-radius:10px;background:#fff;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;}
.fin-month-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--bg-hover);}
.fin-month-label{font-family:'Space Mono',monospace;font-weight:700;font-size:.88rem;color:var(--text-primary);min-width:150px;text-align:center;}

/* Summary */
.fin-total{padding:.65rem .85rem;background:rgba(232,74,122,.04);border-radius:10px;margin-bottom:.65rem;font-size:.88rem;font-weight:600;color:var(--text-primary);}
.fin-total strong{color:var(--accent-primary);}
.fin-cat-row{display:flex;justify-content:space-between;align-items:center;padding:.35rem .5rem;font-size:.82rem;border-radius:8px;transition:background .15s;}
.fin-cat-row:hover{background:var(--bg-hover);}
.fin-cat-label{color:var(--text-secondary);font-weight:600;}
.fin-cat-val{font-family:'Space Mono',monospace;font-weight:700;color:var(--text-primary);font-size:.8rem;}
.fin-cat-sub{display:flex;justify-content:space-between;padding:.2rem .5rem .2rem 1.5rem;font-size:.75rem;color:var(--text-muted);}

/* History */
.fin-hist-list{display:flex;flex-direction:column;gap:.3rem;}
.fin-hist-entry{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;background:var(--bg-primary);border:1.5px solid var(--border);border-radius:10px;transition:all .2s;}
.fin-hist-entry:hover{border-color:var(--border-strong);}
.fin-hist-date{font-family:'Space Mono',monospace;font-size:.65rem;font-weight:700;color:var(--text-muted);min-width:50px;}
.fin-hist-info{flex:1;min-width:0;}
.fin-hist-type{font-size:.78rem;font-weight:700;color:var(--text-primary);display:block;}
.fin-hist-title{font-size:.72rem;color:var(--text-muted);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.fin-hist-amount{font-family:'Space Mono',monospace;font-weight:700;font-size:.8rem;color:var(--accent-primary);white-space:nowrap;}
.fin-hist-del{width:26px;height:26px;border:none;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .2s;font-size:.72rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.fin-hist-del:hover{background:rgba(231,76,60,.08);color:#e74c3c;}

/* Bilan table */
.bilan-table-wrap{overflow-x:auto;border-radius:12px;border:1.5px solid var(--border);}
.bilan-table{width:100%;border-collapse:collapse;font-size:.8rem;}
.bilan-table th{background:var(--bg-primary);padding:.55rem .65rem;text-align:left;font-size:.7rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;border-bottom:1.5px solid var(--border);}
.bilan-table td{padding:.5rem .65rem;border-bottom:1px solid var(--border);color:var(--text-primary);}
.bilan-table tr:last-child td{border-bottom:none;}
.bilan-current{background:rgba(232,74,122,.04)!important;}
.bilan-current td{font-weight:700;}
.bilan-rev{color:var(--accent-success);font-family:'Space Mono',monospace;font-size:.78rem;}
.bilan-exp{color:var(--accent-primary);font-family:'Space Mono',monospace;font-size:.78rem;}
.bilan-pos{color:var(--accent-success);font-family:'Space Mono',monospace;font-size:.78rem;}
.bilan-neg{color:var(--accent-primary);font-family:'Space Mono',monospace;font-size:.78rem;}
.bilan-year{background:var(--bg-primary)!important;}.bilan-year td{font-weight:700;border-top:2px solid var(--border);}
