Index: app/main.py
===================================================================
--- app/main.py	(revision 9713fbeead3fa2fe7477ce0e7b352d2fa6f6ed59)
+++ app/main.py	(revision 539afcdf7c1712c74fa34fb209688b0e17762c72)
@@ -100,5 +100,8 @@
 
 # Dependency to get the current user
-def get_current_user(token: str = Depends(oauth2_scheme), db: Session = Depends(get_db)):
+def get_current_user(
+    token: str = Depends(oauth2_scheme), 
+    db: Session = Depends(get_db)
+):
     """
     Retrieves the current user based on the access token.
@@ -108,14 +111,26 @@
         user_id = payload.get("sub")
         if not user_id:
-            raise HTTPException(status_code=401, detail="Invalid authentication credentials", headers={"WWW-Authenticate": "Bearer"},)
+            raise HTTPException(
+                status_code=401, 
+                detail="Invalid authentication credentials", 
+                headers={"WWW-Authenticate": "Bearer"}
+            )
         
         user = db.query(User).filter(User.user_id == user_id).first()
         if not user:
-            raise HTTPException(status_code=401, detail="Invalid authentication credentials",  headers={"WWW-Authenticate": "Bearer"},)
+            raise HTTPException(
+                status_code=401, 
+                detail="Invalid authentication credentials",
+                headers={"WWW-Authenticate": "Bearer"}
+            )
         
         return user
     except Exception as e:
         print(f"Error decoding token or fetching user: {e}")
-        raise HTTPException(status_code=401, detail="Invalid authentication credentials", headers={"WWW-Authenticate": "Bearer"},)
+        raise HTTPException(
+            status_code=401, 
+            detail="Invalid authentication credentials", 
+            headers={"WWW-Authenticate": "Bearer"}
+        )
 
 # Routes
@@ -125,9 +140,15 @@
 
 @app.post("/auth/register/", response_model=AuthResponse)
-def register(auth_request: AuthRequest, db: Session = Depends(get_db)):
+def register(
+    auth_request: AuthRequest, 
+    db: Session = Depends(get_db)
+):
     # Check if email already exists
     existing_user = db.query(User).filter(User.email == auth_request.email).first()
     if existing_user:
-        raise HTTPException(status_code=400, detail="Email already registered")
+        raise HTTPException(
+            status_code=400, 
+            detail="Email already registered"
+        )
 
     # Hash password and create new user
@@ -147,9 +168,15 @@
 
 @app.post("/auth/login/", response_model=AuthResponse)
-def login(auth_request: AuthRequest, db: Session = Depends(get_db)):
+def login(
+    auth_request: AuthRequest, 
+    db: Session = Depends(get_db)
+):
     # Verify email and password
     user = db.query(User).filter(User.email == auth_request.email).first()
     if not user or not verify_password(auth_request.password, user.password):
-        raise HTTPException(status_code=401, detail="Invalid email or password")
+        raise HTTPException(
+            status_code=401, 
+            detail="Invalid email or password"
+        )
 
     # Return access token
@@ -158,13 +185,27 @@
 
 @app.get("/admin/accounts/", response_model=List[TransactionAccountResponse])
-def admin_get_all_accounts(user: User = Depends(get_current_user), db: Session = Depends(get_db)):
+def admin_get_all_accounts(
+    user: User = Depends(get_current_user), 
+    db: Session = Depends(get_db)
+):
     if not is_admin(user.email):
-        raise HTTPException(status_code=403, detail="Access denied")
+        raise HTTPException(
+            status_code=403, 
+            detail="Access denied"
+        )
     return db.query(TransactionAccount).all()
 
 
 @app.post("/accounts/", response_model=TransactionAccountResponse)
-def create_account(account: TransactionAccountCreate, user: User = Depends(get_current_user), db: Session = Depends(get_db)):
-    new_account = TransactionAccount(account_name=account.account_name, balance=account.balance, user_id=user.user_id)
+def create_account(
+    account: TransactionAccountCreate, 
+    user: User = Depends(get_current_user), 
+    db: Session = Depends(get_db)
+):
+    new_account = TransactionAccount(
+        account_name=account.account_name, 
+        balance=account.balance, 
+        user_id=user.user_id
+    )
     db.add(new_account)
     db.commit()
@@ -173,9 +214,16 @@
 
 @app.get("/accounts/", response_model=List[TransactionAccountResponse])
-def get_accounts(user: User = Depends(get_current_user), db: Session = Depends(get_db)):
+def get_accounts(
+    user: User = Depends(get_current_user), 
+    db: Session = Depends(get_db)
+):
     return db.query(TransactionAccount).filter(TransactionAccount.user_id == user.user_id).all()
 
 @app.post("/transactions/", response_model=TransactionResponse)
-def create_transaction(transaction_request: TransactionCreateRequest, user: User = Depends(get_current_user), db: Session = Depends(get_db)):
+def create_transaction(
+    transaction_request: TransactionCreateRequest, 
+    user: User = Depends(get_current_user), 
+    db: Session = Depends(get_db)
+):
     """
     Create a transaction and associate it with the user's accounts via breakdowns.
@@ -187,5 +235,8 @@
     ).first()
     if not target_account:
-        raise HTTPException(status_code=403, detail="Access denied to target account.")
+        raise HTTPException(
+            status_code=403, 
+            detail="Access denied to target account."
+        )
 
     # Create transaction
@@ -220,5 +271,8 @@
             ).first()
             if not breakdown_account:
-                raise HTTPException(status_code=403, detail=f"Access denied to breakdown account {breakdown.transaction_account_id}.")
+                raise HTTPException(
+                    status_code=403, 
+                    detail=f"Access denied to breakdown account {breakdown.transaction_account_id}."
+                )
 
             # Create breakdown
@@ -292,5 +346,8 @@
         transaction = db.query(Transaction).filter(Transaction.transaction_id == transaction_id).first()
         if not transaction:
-            raise HTTPException(status_code=404, detail="Transaction not found.")
+            raise HTTPException(
+                status_code=404, 
+                detail="Transaction not found."
+            )
         return transaction
     
@@ -305,10 +362,17 @@
     )
     if not transaction:
-        raise HTTPException(status_code=404, detail="Transaction not found or access denied.")
+        raise HTTPException(
+            status_code=404, 
+            detail="Transaction not found or access denied."
+        )
     
     return transaction
 
 @app.get("/transactions/{transaction_id}/breakdowns", response_model=List[TransactionBreakdownResponse])
-def get_transaction_breakdowns(transaction_id: int, user: User = Depends(get_current_user), db: Session = Depends(get_db)):
+def get_transaction_breakdowns(
+    transaction_id: int, 
+    user: User = Depends(get_current_user), 
+    db: Session = Depends(get_db)
+):
     """
     Fetch transaction breakdowns for a specific transaction.
@@ -323,5 +387,8 @@
 
     if not breakdowns:
-        raise HTTPException(status_code=404, detail="No breakdowns found for this transaction.")
+        raise HTTPException(
+            status_code=404, 
+            detail="No breakdowns found for this transaction."
+        )
 
     return breakdowns
@@ -348,5 +415,8 @@
     )
     if not transaction:
-        raise HTTPException(status_code=404, detail="Transaction not found or access denied.")
+        raise HTTPException(
+            status_code=404, 
+            detail="Transaction not found or access denied."
+        )
 
     # Update transaction fields
@@ -378,5 +448,8 @@
 
     if not transaction:
-        raise HTTPException(status_code=404, detail="Transaction not found or access denied.")
+        raise HTTPException(
+            status_code=404, 
+            detail="Transaction not found or access denied."
+        )
 
     db.delete(transaction)
@@ -385,6 +458,13 @@
 
 @app.get("/reports/", response_model=dict)
-def get_reports(db: Session = Depends(get_db)):
-    total_spent = db.query(Transaction).with_entities(Transaction.amount).filter(Transaction.amount > 0).all()
+def get_reports(
+    db: Session = Depends(get_db)
+):
+    total_spent = (
+        db.query(Transaction)
+        .with_entities(Transaction.amount)
+        .filter(Transaction.amount > 0)
+        .all()
+    )
     return {"report": "Reports feature placeholder"}
 
@@ -411,5 +491,8 @@
     )
     if not user_account:
-        raise HTTPException(status_code=403, detail="No account available to associate with the tag.")
+        raise HTTPException(
+            status_code=403, 
+            detail="No account available to associate with the tag."
+        )
 
     # Associate the tag with a dummy transaction for the user
@@ -501,5 +584,8 @@
     )
     if not tag_accessible:
-        raise HTTPException(status_code=404, detail="Access denied to the tag.")
+        raise HTTPException(
+            status_code=404, 
+            detail="Access denied to the tag."
+        )
     
     # Check if the tag is already assigned to the transaction
@@ -513,5 +599,8 @@
     )
     if existing_assignment:
-        raise HTTPException(status_code=400, detail="Tag already assigned to this transaction.")
+        raise HTTPException(
+            status_code=400, 
+            detail="Tag already assigned to this transaction."
+        )
 
     # Assign the tag to the transaction
@@ -554,5 +643,8 @@
     )
     if not transaction:
-        raise HTTPException(status_code=403, detail="Access denied")
+        raise HTTPException(
+            status_code=403, 
+            detail="Access denied"
+        )
     
     # Retrieve tags for the transaction
