*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;background-color:#f0f4f8;color:#333}.container{max-width:1100px;margin:0 auto;padding:24px 16px}.header{background:linear-gradient(135deg,#1a73e8,#0d47a1);color:#fff;padding:24px 0;margin-bottom:32px;box-shadow:0 2px 8px rgba(0,0,0,.2)}.header h1{font-size:2rem;font-weight:700;letter-spacing:-.5px}.header p{margin-top:4px;opacity:.85;font-size:1rem}.grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px;margin-bottom:24px}@media (max-width:768px){.grid{grid-template-columns:1fr}}.card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,.08)}.card h2{font-size:1.2rem;font-weight:600;margin-bottom:16px;color:#1a73e8;border-bottom:2px solid #e8f0fe;padding-bottom:8px}.summary-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-bottom:24px}@media (max-width:600px){.summary-cards{grid-template-columns:1fr}}.summary-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px rgba(0,0,0,.08);text-align:center}.summary-card .label{font-size:.85rem;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-card .amount{font-size:1.8rem;font-weight:700}.summary-card.income .amount{color:#2e7d32}.summary-card.expense .amount{color:#c62828}.summary-card.balance .amount{color:#1565c0}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.9rem;font-weight:500;margin-bottom:6px;color:#555}.form-group input,.form-group select{width:100%;padding:10px 12px;border:1.5px solid #ddd;border-radius:8px;font-size:1rem;transition:border-color .2s;outline:none;background:#fafafa}.form-group input:focus,.form-group select:focus{border-color:#1a73e8;background:#fff}.btn{display:inline-block;padding:10px 20px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s}.btn:active{transform:scale(.98)}.btn-primary{background:#1a73e8;color:#fff;width:100%;margin-top:8px}.btn-primary:hover{background:#1558b0}.btn-danger{background:transparent;color:#c62828;border:none;cursor:pointer;font-size:1.1rem;padding:4px 8px;border-radius:4px}.btn-danger:hover{background:#ffebee}.transaction-list{list-style:none;max-height:340px;overflow-y:auto}.transaction-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #f0f0f0}.transaction-item:last-child{border-bottom:none}.transaction-info{flex:1 1}.transaction-desc{font-weight:500;font-size:.95rem}.transaction-meta{font-size:.8rem;color:#888;margin-top:2px}.transaction-amount{font-weight:700;font-size:1rem;margin-right:12px}.transaction-amount.income{color:#2e7d32}.transaction-amount.expense{color:#c62828}.category-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600;margin-left:8px}.chart-bar-container{margin-bottom:12px}.chart-bar-label{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:4px;color:#555}.chart-bar-track{background:#e8f0fe;border-radius:6px;height:18px;overflow:hidden}.chart-bar-fill{height:100%;border-radius:6px;transition:width .4s ease}.month-selector{display:flex;align-items:center;gap:12px;margin-bottom:24px}.month-selector select{padding:8px 12px;border:1.5px solid #ddd;border-radius:8px;font-size:1rem;background:#fff;outline:none;cursor:pointer}.month-selector select:focus{border-color:#1a73e8}.empty-state{text-align:center;padding:32px;color:#aaa;font-size:.95rem}.full-width{grid-column:1/-1}.tab-bar{display:flex;gap:8px;margin-bottom:16px}.tab-btn{padding:8px 18px;border:2px solid #1a73e8;border-radius:20px;background:transparent;color:#1a73e8;font-weight:600;cursor:pointer;font-size:.9rem;transition:all .2s}.tab-btn.active{background:#1a73e8;color:#fff}.tab-btn:hover:not(.active){background:#e8f0fe}