.bfu-tracker{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,sans-serif}
.bfu-header{background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:#fff;padding:30px;border-radius:12px;margin-bottom:30px}
.bfu-header h1{margin:0 0 10px;font-size:28px}
.bfu-header p{margin:0 0 20px;opacity:.9}
.bfu-tabs{display:flex;gap:10px;flex-wrap:wrap}
.bfu-tab{padding:10px 20px;background:rgba(255,255,255,.2);border:none;color:#fff;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}
.bfu-tab:hover{background:rgba(255,255,255,.3)}
.bfu-tab.active{background:#fff;color:#1e3a8a}
.bfu-tab-content{display:none}
.bfu-tab-content.active{display:block}
.bfu-action-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-bottom:30px}
.bfu-btn-action{padding:12px 20px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}
.bfu-btn-action.primary{background:#3b82f6;color:#fff}
.bfu-btn-action.primary:hover{background:#2563eb}
.bfu-btn-action.success{background:#059669;color:#fff}
.bfu-btn-action.success:hover{background:#047857}
.bfu-btn-action.danger{background:#dc2626;color:#fff}
.bfu-btn-action.danger:hover{background:#b91c1c}
.bfu-btn-action.import{background:#8b5cf6;color:#fff}
.bfu-btn-action.import:hover{background:#7c3aed}
.bfu-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}
.stat-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.05)}
.stat-card .label{font-size:12px;color:#6b7280;text-transform:uppercase;margin-bottom:5px}
.stat-card .value{font-size:28px;font-weight:700;color:#1e3a8a}
.bfu-quick-add{background:#fff;padding:20px;border-radius:12px;margin-bottom:20px;box-shadow:0 2px 4px rgba(0,0,0,.05)}
.bfu-quick-add h3{margin:0 0 15px;color:#1e3a8a}
.bfu-quick-add form{display:grid;grid-template-columns:120px 1fr 180px 100px 100px;gap:10px}
.bfu-quick-add input,.bfu-quick-add select{padding:10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}
.bfu-quick-add button{background:#059669;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:600}
.bfu-quick-add button:hover{background:#047857}
.bfu-categories{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.05)}
.bfu-categories h3{margin:0 0 20px;color:#1e3a8a}
.cat-item{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}
.cat-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.cat-header{display:flex;justify-content:space-between;margin-bottom:10px;flex-wrap:wrap}
.cat-name{font-weight:600;color:#1f2937}
.cat-amounts{font-size:13px;color:#6b7280}
.cat-amounts .actual{font-weight:600;color:#1f2937}
.progress-bar{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:5px}
.progress-fill{height:100%;transition:width .3s}
.progress-fill.under{background:#10b981}
.progress-fill.over{background:#ef4444}
.variance{font-size:12px;font-weight:600;text-align:right}
.variance.pos{color:#10b981}
.variance.neg{color:#ef4444}
.bfu-modal{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,.6);animation:fadeIn .3s}
.bfu-modal.active{display:flex;align-items:center;justify-content:center}
.bfu-modal-content{background:#fff;margin:20px;padding:30px;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s}
.bfu-modal-close{position:absolute;right:20px;top:20px;font-size:28px;font-weight:700;color:#6b7280;cursor:pointer;line-height:1}
.bfu-modal-close:hover{color:#1f2937}
.bfu-modal-content h2{margin:0 0 10px;color:#1e3a8a}
.bfu-modal-content p{color:#6b7280;margin-bottom:20px}
.budget-row{display:grid;grid-template-columns:1fr 150px;gap:15px;align-items:center;padding:15px;border-bottom:1px solid #e5e7eb}
.budget-row:last-of-type{border-bottom:2px solid #d1d5db}
.budget-row label{display:flex;align-items:center;gap:10px;font-weight:600;color:#1f2937}
.budget-icon{font-size:20px}
.budget-input-wrap{position:relative}
.budget-currency{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#6b7280;font-weight:600}
.budget-input-wrap input{width:100%;padding:10px 10px 10px 25px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;box-sizing:border-box}
.budget-total{padding:20px;background:#f0f9ff;border-radius:8px;margin:20px 0;display:flex;justify-content:space-between;align-items:center;font-size:16px}
.budget-total strong{color:#1e3a8a}
#budget-total-amount{font-size:24px;font-weight:700;color:#1e3a8a}
.bfu-transactions{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.05)}
.trans-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}
.trans-header h3{margin:0;color:#1e3a8a}
.trans-header input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;min-width:200px}
.trans-item{display:grid;grid-template-columns:100px 1fr 150px 100px 60px;gap:15px;align-items:center;padding:15px;border-bottom:1px solid #e5e7eb}
.trans-item:hover{background:#f9fafb}
.trans-date{color:#6b7280;font-size:13px}
.trans-desc{font-weight:600;color:#1f2937}
.trans-cat{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}
.trans-amt{font-weight:700;color:#dc2626;text-align:right}
.trans-actions button{background:none;border:none;cursor:pointer;font-size:16px;padding:5px}
.bfu-form{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.05)}
.bfu-form h3{margin:0 0 20px;color:#1e3a8a}
.bfu-form label{display:block;margin:15px 0 5px;font-size:13px;font-weight:600;color:#374151}
.bfu-form input,.bfu-form select,.bfu-form textarea{width:100%;padding:10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;box-sizing:border-box}
.bfu-form textarea{min-height:80px;resize:vertical}
.bfu-form button{margin-top:20px;width:100%;background:#059669;color:#fff;border:none;padding:12px;border-radius:6px;font-weight:600;cursor:pointer}
.bfu-form button:hover{background:#047857}
.bfu-btn-primary{width:100%;background:#059669;color:#fff;border:none;padding:12px;border-radius:6px;font-weight:600;cursor:pointer}
.bfu-btn-primary:hover{background:#047857}
.bfu-widget{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.05)}
.bfu-widget h3{margin:0 0 15px;color:#1e3a8a}
.bfu-widget-form input,.bfu-widget-form select{width:100%;padding:10px;border:1px solid #d1d5db;border-radius:6px;margin-bottom:10px;box-sizing:border-box}
.bfu-widget-form button{width:100%;background:#059669;color:#fff;border:none;padding:12px;border-radius:6px;font-weight:600;cursor:pointer}
.bfu-widget-form button:hover{background:#047857}
.msg{margin-top:10px;padding:10px;border-radius:6px;font-size:13px}
.msg.success{background:#d1fae5;color:#065f46}
.msg.error{background:#fee2e2;color:#991b1b}
.alert{padding:15px;border-radius:8px;margin-bottom:20px;font-size:14px}
.alert.success{background:#d1fae5;color:#065f46}
.alert.error{background:#fee2e2;color:#991b1b}
.alert.info{background:#dbeafe;color:#1e40af}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideUp{from{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}
@media (max-width:768px){
.bfu-quick-add form{grid-template-columns:1fr}
.trans-item{grid-template-columns:1fr;gap:10px}
.bfu-action-buttons{grid-template-columns:1fr}
.budget-row{grid-template-columns:1fr}
.budget-input-wrap{margin-top:10px}
}

/* Import Section */
.bfu-import-section{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.05)}
.bfu-import-section h3{margin:0 0 10px;color:#1e3a8a}
.bfu-import-section>p{color:#6b7280;margin-bottom:20px}
.import-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;margin-bottom:30px}
.import-card{border:2px solid #e5e7eb;padding:20px;border-radius:8px;text-align:center;position:relative}
.import-card.active-import{border-color:#3b82f6;background:#f0f9ff}
.import-card.coming-soon{opacity:.6}
.import-icon{font-size:36px;margin-bottom:10px}
.import-card h4{color:#1f2937;margin:0 0 5px;font-size:16px}
.import-card p{color:#6b7280;font-size:13px;margin:0}
.coming-badge{display:inline-block;background:#f59e0b;color:#fff;padding:4px 10px;border-radius:12px;font-size:11px;margin-top:10px;font-weight:600}
.file-upload-area{border:2px dashed #3b82f6;background:#f0f9ff;padding:40px 20px;border-radius:8px;cursor:pointer;transition:all .2s}
.file-upload-area:hover{background:#dbeafe;border-color:#2563eb}
.file-upload-area.dragover{background:#bfdbfe;border-color:#1e40af;transform:scale(1.02)}
.upload-icon{font-size:48px;margin-bottom:10px}
.file-upload-area p{margin:5px 0;color:#1e3a8a}
.file-hint{font-size:12px;color:#6b7280}
.filename-display{margin-top:15px;padding:10px;background:#f3f4f6;border-radius:6px;font-size:14px}
.import-tips{background:#f0fdf4;border-left:4px solid #10b981;padding:20px;border-radius:8px;margin-bottom:20px}
.import-tips h4{color:#065f46;margin:0 0 10px}
.import-tips ul{margin:0;padding-left:20px;color:#047857}
.import-tips li{margin-bottom:8px;line-height:1.6}
.csv-sample{background:#1f2937;color:#10b981;padding:20px;border-radius:8px;margin-bottom:20px}
.csv-sample h4{color:#fff;margin:0 0 10px}
.csv-code{margin-bottom:15px}
.csv-code pre{background:#111827;padding:15px;border-radius:6px;overflow-x:auto;margin:0;font-size:12px;line-height:1.6}
.bfu-btn-secondary{background:#f3f4f6;color:#1f2937;border:1px solid #d1d5db;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:600}
.bfu-btn-secondary:hover{background:#e5e7eb}
.import-results{background:#f0f9ff;border:1px solid #3b82f6;padding:20px;border-radius:8px;margin-top:20px}
.import-results h4{color:#1e3a8a;margin:0 0 15px}
.success-msg{background:#d1fae5;color:#065f46;padding:12px;border-radius:6px;margin-bottom:15px;font-size:14px}
.import-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:15px}
.stat-item{text-align:center;padding:15px;background:#fff;border-radius:8px}
.stat-number{display:block;font-size:24px;font-weight:700;margin-bottom:5px}
.stat-item.success .stat-number{color:#059669}
.stat-item.warning .stat-number{color:#f59e0b}
.stat-item.error .stat-number{color:#dc2626}
.stat-label{font-size:12px;color:#6b7280}
.error-list{background:#fee2e2;border:1px solid #ef4444;padding:15px;border-radius:6px}
.error-list strong{color:#991b1b;display:block;margin-bottom:5px}
.error-list ul{margin:0;padding-left:20px;color:#7f1d1d}
.error-list li{margin-bottom:5px;font-size:13px}
