
msgid ""
msgstr ""
"Project-Id-Version:  TimeTracker\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2026-04-29 07:57+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
"Language-Team: en <LL@li.org>\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.14.0\n"

#: app/__init__.py:867 app/__init__.py:899
msgid "Your session expired or the page was open too long. Please try again."
msgstr ""

#: app/routes/admin.py:613 app/utils/decorators.py:20
msgid "Administrator access required"
msgstr ""

#: app/routes/admin.py:825
msgid "User creation is disabled in demo mode."
msgstr ""

#: app/routes/admin.py:833 app/routes/admin.py:905 app/routes/kiosk.py:118
msgid "Username is required"
msgstr ""

#: app/routes/admin.py:839
msgid "User already exists"
msgstr ""

#: app/routes/admin.py:849 app/routes/admin.py:943
msgid "Default 'user' role not found. Please run 'flask seed_permissions_cmd' first."
msgstr ""

#: app/routes/admin.py:873
msgid "Could not create user due to a database error. Please check server logs."
msgstr ""

#: app/routes/admin.py:877
#, python-format
msgid "User \"%(username)s\" created successfully"
msgstr ""

#: app/routes/admin.py:917
msgid "Username already exists"
msgstr ""

#: app/routes/admin.py:928
msgid "Please select a client when enabling client portal access."
msgstr ""

#: app/routes/admin.py:960 app/routes/auth.py:258 app/routes/auth.py:394
#: app/routes/auth.py:516 app/routes/auth.py:795 app/routes/auth.py:887
#: app/routes/client_portal.py:387 app/templates/auth/change_password.html:28
msgid "Password must be at least 8 characters long."
msgstr ""

#: app/routes/admin.py:970 app/routes/auth.py:261 app/routes/auth.py:799
#: app/routes/auth.py:891 app/routes/client_portal.py:391
msgid "Passwords do not match."
msgstr ""

#: app/routes/admin.py:1023
msgid "Could not update user due to a database error. Please check server logs."
msgstr ""

#: app/routes/admin.py:1033
#, python-format
msgid "Password reset successfully for user \"%(username)s\""
msgstr ""

#: app/routes/admin.py:1035
#, python-format
msgid "User \"%(username)s\" updated successfully"
msgstr ""

#: app/routes/admin.py:1054
msgid "Cannot delete the last administrator"
msgstr ""

#: app/routes/admin.py:1059
msgid "Cannot delete user with existing time entries"
msgstr ""

#: app/routes/admin.py:1078
msgid "Could not delete user due to a database error. Please check server logs."
msgstr ""

#: app/routes/admin.py:1081
#, python-format
msgid "User \"%(username)s\" deleted successfully"
msgstr ""

#: app/routes/admin.py:1150
msgid "Telemetry has been enabled. Thank you for helping us improve!"
msgstr ""

#: app/routes/admin.py:1152
msgid "Detailed analytics has been disabled. Anonymous base telemetry remains active."
msgstr ""

#: app/routes/admin.py:1196
msgid "Invalid locked client selection."
msgstr ""

#: app/routes/admin.py:1207
msgid "Selected locked client does not exist or is not active."
msgstr ""

#: app/routes/admin.py:1241
#, python-format
msgid "Cannot disable '%(module)s' because the following modules depend on it: %(dependents)s"
msgstr ""

#: app/routes/admin.py:1264
msgid "Could not update module visibility due to a database error. Please check server logs."
msgstr ""

#: app/routes/admin.py:1274
msgid "Module visibility updated successfully"
msgstr ""

#: app/routes/admin.py:1331 app/routes/setup.py:42
#, python-format
msgid "Invalid timezone: %(timezone)s"
msgstr ""

#: app/routes/admin.py:1378
#, python-format
msgid "Invalid invoice number pattern: %(reason)s"
msgstr ""

#: app/routes/admin.py:1543
msgid "Could not update settings due to a database error. Please check server logs."
msgstr ""

#: app/routes/admin.py:1578
msgid "Settings updated successfully"
msgstr ""

#: app/routes/admin.py:1631 app/routes/admin.py:1644 app/routes/user.py:249
#: app/routes/user.py:261 app/routes/user.py:288 app/routes/user.py:301
#: app/templates/admin/settings.html:766
msgid "Invalid code."
msgstr ""

#: app/routes/admin.py:1649 app/routes/user.py:202 app/routes/user.py:306
msgid "Error saving settings"
msgstr ""

#: app/routes/admin.py:1753 app/routes/admin.py:2103
msgid "Invalid template JSON format. Please try again."
msgstr ""

#: app/routes/admin.py:1795 app/routes/admin.py:2152
msgid "Error: Template JSON is empty. Please try saving again."
msgstr ""

#: app/routes/admin.py:1807 app/routes/admin.py:2164
msgid "Error: Template JSON is invalid. Please try saving again."
msgstr ""

#: app/routes/admin.py:1817 app/routes/admin.py:2174
msgid "Error: Template JSON is not valid JSON. Please try saving again."
msgstr ""

#: app/routes/admin.py:1850 app/routes/admin.py:2188
msgid "Could not update PDF layout due to a database error."
msgstr ""

#: app/routes/admin.py:1860 app/routes/admin.py:2196
msgid "PDF layout updated successfully"
msgstr ""

#: app/routes/admin.py:1866 app/routes/admin.py:2202
msgid "PDF layout saved but template JSON verification failed. Please check the template."
msgstr ""

#: app/routes/admin.py:1996 app/routes/admin.py:2311
msgid "Could not reset PDF layout due to a database error."
msgstr ""

#: app/routes/admin.py:1998 app/routes/admin.py:2313
msgid "PDF layout reset to defaults"
msgstr ""

#: app/routes/admin.py:2329 app/routes/admin.py:2440
msgid "Invalid page size"
msgstr ""

#: app/routes/admin.py:2335 app/routes/admin.py:2446
msgid "Template not found for this page size"
msgstr ""

#: app/routes/admin.py:2372 app/routes/admin.py:2483
msgid "No file uploaded"
msgstr ""

#: app/routes/admin.py:2377 app/routes/admin.py:2488 app/routes/clients.py:1269
#: app/routes/comments.py:291 app/routes/expenses.py:1270
#: app/routes/invoices.py:1615 app/routes/projects.py:2028
#: app/routes/quotes.py:1132 app/routes/quotes.py:1994
#: app/routes/team_chat.py:481
msgid "No file selected"
msgstr ""

#: app/routes/admin.py:2387 app/routes/admin.py:2498
msgid "Invalid template JSON format. Missing 'page' property."
msgstr ""

#: app/routes/admin.py:2413 app/routes/admin.py:2524
msgid "Could not import template due to a database error."
msgstr ""

#: app/routes/admin.py:2415 app/routes/admin.py:2526
msgid "Template imported successfully"
msgstr ""

#: app/routes/admin.py:2420 app/routes/admin.py:2531
#, python-format
msgid "Invalid JSON file: %(error)s"
msgstr ""

#: app/routes/admin.py:2424 app/routes/admin.py:2535
#, python-format
msgid "Error importing template: %(error)s"
msgstr ""

#: app/routes/admin.py:2704
msgid "Invoice not found"
msgstr ""

#: app/routes/admin.py:3342 app/routes/quotes.py:495
msgid "Quote not found"
msgstr ""

#: app/routes/admin.py:3878 app/routes/admin.py:3883
msgid "No logo file selected"
msgstr ""

#: app/routes/admin.py:3900 app/routes/auth.py:826
msgid "Invalid image file."
msgstr ""

#: app/routes/admin.py:3929
msgid "Could not save logo due to a database error. Please check server logs."
msgstr ""

#: app/routes/admin.py:3933
msgid "Company logo uploaded successfully! You can see it in the \"Current Company Logo\" section above. It will appear on invoices and PDF documents."
msgstr ""

#: app/routes/admin.py:3939
msgid "Invalid file type. Allowed types: PNG, JPG, JPEG, GIF, SVG, WEBP"
msgstr ""

#: app/routes/admin.py:3963
msgid "Could not remove logo due to a database error. Please check server logs."
msgstr ""

#: app/routes/admin.py:3965
msgid "Company logo removed successfully. Upload a new logo in the section below if needed."
msgstr ""

#: app/routes/admin.py:3967
msgid "No logo to remove"
msgstr ""

#: app/routes/admin.py:4097
msgid "Backup failed: archive not created"
msgstr ""

#: app/routes/admin.py:4102
#, python-format
msgid "Backup failed: %(error)s"
msgstr ""

#: app/routes/admin.py:4114 app/routes/admin.py:4135
msgid "Invalid file type"
msgstr ""

#: app/routes/admin.py:4121 app/routes/admin.py:4146
msgid "Backup file not found"
msgstr ""

#: app/routes/admin.py:4144
#, python-format
msgid "Backup \"%(filename)s\" deleted successfully"
msgstr ""

#: app/routes/admin.py:4148
#, python-format
msgid "Failed to delete backup: %(error)s"
msgstr ""

#: app/routes/admin.py:4167
msgid "Invalid file type. Please select a .zip backup archive."
msgstr ""

#: app/routes/admin.py:4171
msgid "Backup file not found."
msgstr ""

#: app/routes/admin.py:4182
msgid "Invalid file type. Please upload a .zip backup archive."
msgstr ""

#: app/routes/admin.py:4189
msgid "No backup file provided"
msgstr ""

#: app/routes/admin.py:4224
msgid "Restore started. You can monitor progress on this page."
msgstr ""

#: app/routes/admin.py:4362
msgid "OIDC is not enabled. Set AUTH_METHOD to \"oidc\", \"both\", or \"all\"."
msgstr ""

#: app/routes/admin.py:4367
msgid "OIDC_ISSUER is not configured"
msgstr ""

#: app/routes/admin.py:4375
#, python-format
msgid "✗ Failed to parse issuer URL: %(error)s"
msgstr ""

#: app/routes/admin.py:4379
msgid "Testing DNS resolution with multiple strategies..."
msgstr ""

#: app/routes/admin.py:4402
#, python-format
msgid "✓ DNS resolution successful using %(strategy)s strategy: %(ip)s"
msgstr ""

#: app/routes/admin.py:4407
#, python-format
msgid "✗ DNS resolution failed using %(strategy)s strategy: %(error)s"
msgstr ""

#: app/routes/admin.py:4417
msgid "ℹ Docker environment detected - internal service names may be available"
msgstr ""

#: app/routes/admin.py:4441
#, python-format
msgid "✓ Discovery document fetched successfully from %(url)s"
msgstr ""

#: app/routes/admin.py:4446
#, python-format
msgid "✓ DNS strategy used: %(strategy)s"
msgstr ""

#: app/routes/admin.py:4452
#, python-format
msgid "✗ Failed to fetch discovery document: %(error)s"
msgstr ""

#: app/routes/admin.py:4457
#, python-format
msgid "✗ Unexpected error: %(error)s"
msgstr ""

#: app/routes/admin.py:4463
msgid "✗ Failed to retrieve discovery document"
msgstr ""

#: app/routes/admin.py:4470
msgid "✓ OAuth client is registered in application"
msgstr ""

#: app/routes/admin.py:4473
msgid "✗ OAuth client is not registered"
msgstr ""

#: app/routes/admin.py:4476
#, python-format
msgid "✗ Failed to create OAuth client: %(error)s"
msgstr ""

#: app/routes/admin.py:4483
#, python-format
msgid "✓ %(endpoint)s: %(url)s"
msgstr ""

#: app/routes/admin.py:4485
#, python-format
msgid "✗ Missing %(endpoint)s in discovery document"
msgstr ""

#: app/routes/admin.py:4492
#, python-format
msgid "✓ Scope \"%(scope)s\" is supported by provider"
msgstr ""

#: app/routes/admin.py:4498
#, python-format
msgid "⚠ Scope \"%(scope)s\" may not be supported by provider (supported: %(supported)s)"
msgstr ""

#: app/routes/admin.py:4506
#, python-format
msgid "ℹ Provider supports claims: %(claims)s"
msgstr ""

#: app/routes/admin.py:4519
#, python-format
msgid "✓ Configured %(claim_type)s claim \"%(claim_name)s\" is supported"
msgstr ""

#: app/routes/admin.py:4528
#, python-format
msgid "⚠ Configured %(claim_type)s claim \"%(claim_name)s\" not in supported claims list (may still work)"
msgstr ""

#: app/routes/admin.py:4536
msgid "OIDC configuration test completed"
msgstr ""

#: app/routes/admin.py:5334 app/routes/admin.py:5448
#: app/routes/link_templates.py:42 app/routes/link_templates.py:98
#: app/routes/quotes.py:1433 app/routes/quotes.py:1518
#: app/routes/time_entry_templates.py:57 app/routes/time_entry_templates.py:167
msgid "Template name is required"
msgstr ""

#: app/routes/admin.py:5340 app/templates/admin/email_templates/create.html:104
#: app/templates/admin/email_templates/edit.html:121
msgid "HTML template content is required"
msgstr ""

#: app/routes/admin.py:5348 app/routes/admin.py:5454
msgid "A template with this name already exists"
msgstr ""

#: app/routes/admin.py:5368
msgid "Could not create email template due to a database error."
msgstr ""

#: app/routes/admin.py:5373
msgid "Email template created successfully"
msgstr ""

#: app/routes/admin.py:5470
msgid "Could not update email template due to a database error."
msgstr ""

#: app/routes/admin.py:5473
msgid "Email template updated successfully"
msgstr ""

#: app/routes/admin.py:5491
msgid "Cannot delete template that is in use by invoices or recurring invoices"
msgstr ""

#: app/routes/admin.py:5496
msgid "Could not delete email template due to a database error."
msgstr ""

#: app/routes/admin.py:5498
#, python-format
msgid "Email template \"%(name)s\" deleted successfully"
msgstr ""

#: app/routes/api.py:1325
msgid "Task name and project are required"
msgstr ""

#: app/routes/api.py:1335 app/routes/tasks.py:438
msgid "Selected project does not exist or is inactive"
msgstr ""

#: app/routes/api.py:1358 app/routes/invoices_refactored.py:222
#: app/routes/invoices_refactored.py:261
#: app/routes/projects_refactored_example.py:193 app/routes/tasks.py:273
#: app/routes/timer.py:193 app/routes/timer_refactored.py:51
#: app/routes/timer_refactored.py:127
msgid "message"
msgstr ""

#: app/routes/api.py:1394
#, python-format
msgid "Task \"%(name)s\" created successfully"
msgstr ""

#: app/routes/audit_logs.py:27
msgid "Audit logs table does not exist. Please run: flask db upgrade"
msgstr ""

#: app/routes/auth.py:147 app/templates/auth/change_password.html:8
msgid "You must change your password before continuing."
msgstr ""

#: app/routes/auth.py:155
msgid "Administrator accounts must enable two-factor authentication."
msgstr ""

#: app/routes/auth.py:162 app/routes/auth.py:1505
#, python-format
msgid "Welcome back, %(username)s!"
msgstr ""

#: app/routes/auth.py:178
msgid "Password reset is not available for this authentication method."
msgstr ""

#: app/routes/auth.py:182 app/routes/auth.py:240
msgid "Demo mode: password reset is disabled."
msgstr ""

#: app/routes/auth.py:189
msgid "If an account matches what you entered and email is configured, you'll receive a reset link shortly."
msgstr ""

#: app/routes/auth.py:213
msgid "Reset your TimeTracker password"
msgstr ""

#: app/routes/auth.py:214
#, python-format
msgid ""
"A password reset was requested for your account.\n"
"\n"
"Use this link to set a new password:\n"
"%(url)s\n"
"\n"
"If you did not request this, you can ignore this email."
msgstr ""

#: app/routes/auth.py:246
msgid "This reset link is invalid or has expired. Please request a new one."
msgstr ""

#: app/routes/auth.py:250
msgid "Password reset is not available for this account."
msgstr ""

#: app/routes/auth.py:270
msgid "Your password has been updated. You can now sign in."
msgstr ""

#: app/routes/auth.py:274
msgid "Could not reset password due to a database error."
msgstr ""

#: app/routes/auth.py:336
msgid "Invalid username format"
msgstr ""

#: app/routes/auth.py:349
msgid "Only the demo account can be used. Please use the credentials shown below."
msgstr ""

#: app/routes/auth.py:357 app/routes/auth.py:465 app/routes/auth.py:483
#: app/routes/kiosk.py:132
msgid "Password is required"
msgstr ""

#: app/routes/auth.py:363 app/routes/auth.py:439 app/routes/auth.py:471
#: app/routes/auth.py:496 app/routes/kiosk.py:123 app/routes/kiosk.py:136
msgid "Invalid username or password"
msgstr ""

#: app/routes/auth.py:391
msgid "Password is required to create an account."
msgstr ""

#: app/routes/auth.py:425
msgid "Could not create your account due to a database error. Please try again later."
msgstr ""

#: app/routes/auth.py:435 app/routes/auth.py:1387
msgid "Welcome! Your account has been created."
msgstr ""

#: app/routes/auth.py:441
msgid "User not found. Please contact an administrator."
msgstr ""

#: app/routes/auth.py:449
msgid "Could not update your account role due to a database error."
msgstr ""

#: app/routes/auth.py:455 app/routes/auth.py:1434
msgid "Account is disabled. Please contact an administrator."
msgstr ""

#: app/routes/auth.py:506
msgid "No password is set for your account. Please enter a password to set one and log in."
msgstr ""

#: app/routes/auth.py:525
msgid "Could not set password due to a database error. Please try again."
msgstr ""

#: app/routes/auth.py:528
msgid "Password has been set. You are now logged in."
msgstr ""

#: app/routes/auth.py:537
msgid "Unexpected error during login. Please try again or check server logs."
msgstr ""

#: app/routes/auth.py:551 app/routes/auth.py:558
msgid "Your login session expired. Please sign in again."
msgstr ""

#: app/routes/auth.py:572 app/routes/auth.py:616 app/routes/auth.py:644
msgid "Invalid authentication code."
msgstr ""

#: app/routes/auth.py:625
msgid "Two-factor authentication enabled."
msgstr ""

#: app/routes/auth.py:628
msgid "Could not enable two-factor authentication due to a database error."
msgstr ""

#: app/routes/auth.py:654
msgid "Two-factor authentication disabled."
msgstr ""

#: app/routes/auth.py:657
msgid "Could not disable two-factor authentication due to a database error."
msgstr ""

#: app/routes/auth.py:727
#, python-format
msgid "Goodbye, %(username)s!"
msgstr ""

#: app/routes/auth.py:815
msgid "Invalid avatar file type. Allowed: PNG, JPG, JPEG, GIF, WEBP"
msgstr ""

#: app/routes/auth.py:840
msgid "Failed to save avatar on server."
msgstr ""

#: app/routes/auth.py:859
msgid "Profile updated successfully"
msgstr ""

#: app/routes/auth.py:862
msgid "Could not update your profile due to a database error."
msgstr ""

#: app/routes/auth.py:873
msgid "Password cannot be changed here for your account."
msgstr ""

#: app/routes/auth.py:883
msgid "New password is required"
msgstr ""

#: app/routes/auth.py:897
msgid "Current password is required"
msgstr ""

#: app/routes/auth.py:901
msgid "Current password is incorrect"
msgstr ""

#: app/routes/auth.py:911
msgid "Password changed successfully. You can now continue."
msgstr ""

#: app/routes/auth.py:915
msgid "Could not update password due to a database error."
msgstr ""

#: app/routes/auth.py:938
msgid "Avatar removed"
msgstr ""

#: app/routes/auth.py:941
msgid "Failed to remove avatar."
msgstr ""

#: app/routes/auth.py:981 app/routes/auth.py:1339
msgid "Demo mode: only the demo account can be used. Please use the credentials on the login page."
msgstr ""

#: app/routes/auth.py:1052
#, python-format
msgid "Failed to connect to Single Sign-On provider. Please contact an administrator. Error: %(error)s"
msgstr ""

#: app/routes/auth.py:1061
#, python-format
msgid "Cannot connect to Single Sign-On provider. DNS resolution may be failing. Please contact an administrator. Error: %(error)s"
msgstr ""

#: app/routes/auth.py:1070 app/routes/auth.py:1111
msgid "Single Sign-On is not configured yet. Please contact an administrator."
msgstr ""

#: app/routes/auth.py:1131
msgid "Single Sign-On is not configured."
msgstr ""

#: app/routes/auth.py:1156
msgid "SSO failed: encrypted or unsupported ID tokens. Disable ID token encryption on your provider (e.g. in Authentik, leave the Encryption Key empty)."
msgstr ""

#: app/routes/auth.py:1169
msgid "SSO failed. If this repeats, check session cookie and proxy configuration."
msgstr ""

#: app/routes/auth.py:1312
msgid "Authentication failed: missing issuer or subject claim. Please check OIDC configuration."
msgstr ""

#: app/routes/auth.py:1347
msgid "User account does not exist and self-registration is disabled."
msgstr ""

#: app/routes/auth.py:1391
msgid "Could not create your account due to a database error."
msgstr ""

#: app/routes/auth.py:1511
msgid "Unexpected error during SSO login. Please try again or contact support."
msgstr ""

#: app/routes/budget_alerts.py:332
msgid "You do not have access to this project."
msgstr ""

#: app/routes/budget_alerts.py:339
msgid "This project does not have a budget set."
msgstr ""

#: app/routes/calendar.py:217
msgid "Event created successfully"
msgstr ""

#: app/routes/calendar.py:298
msgid "Event updated successfully"
msgstr ""

#: app/routes/calendar.py:316
msgid "You do not have permission to delete this event."
msgstr ""

#: app/routes/calendar.py:324
msgid "Failed to delete event"
msgstr ""

#: app/routes/calendar.py:329 app/routes/calendar.py:332
msgid "Event deleted successfully"
msgstr ""

#: app/routes/calendar.py:337
#, python-format
msgid "Error deleting event: %(error)s"
msgstr ""

#: app/routes/calendar.py:364
msgid "Event moved successfully"
msgstr ""

#: app/routes/calendar.py:398
msgid "Event resized successfully"
msgstr ""

#: app/routes/calendar.py:415
msgid "You do not have permission to view this event."
msgstr ""

#: app/routes/calendar.py:466
msgid "You do not have permission to edit this event."
msgstr ""

#: app/routes/client_notes.py:23 app/routes/clients.py:67
#: app/routes/clients.py:71
msgid "Clients module is disabled by the administrator."
msgstr ""

#: app/routes/client_notes.py:40 app/routes/client_notes.py:86
msgid "Note content cannot be empty"
msgstr ""

#: app/routes/client_notes.py:51
msgid "Note added successfully"
msgstr ""

#: app/routes/client_notes.py:53
msgid "Error adding note"
msgstr ""

#: app/routes/client_notes.py:56 app/routes/client_notes.py:58
#, python-format
msgid "Error adding note: %(error)s"
msgstr ""

#: app/routes/client_notes.py:72 app/routes/client_notes.py:118
msgid "Note does not belong to this client"
msgstr ""

#: app/routes/client_notes.py:77
msgid "You do not have permission to edit this note"
msgstr ""

#: app/routes/client_notes.py:92 app/templates/clients/view.html:565
#: app/templates/clients/view.html:570
msgid "Error updating note"
msgstr ""

#: app/routes/client_notes.py:99
msgid "Note updated successfully"
msgstr ""

#: app/routes/client_notes.py:103 app/routes/client_notes.py:105
#, python-format
msgid "Error updating note: %(error)s"
msgstr ""

#: app/routes/client_notes.py:123
msgid "You do not have permission to delete this note"
msgstr ""

#: app/routes/client_notes.py:132
msgid "Error deleting note"
msgstr ""

#: app/routes/client_notes.py:139
msgid "Note deleted successfully"
msgstr ""

#: app/routes/client_notes.py:142
#, python-format
msgid "Error deleting note: %(error)s"
msgstr ""

#: app/routes/client_portal.py:64 app/routes/client_portal.py:71
#: app/routes/client_portal.py:200 app/routes/client_portal.py:228
#: app/routes/client_portal.py:237 app/routes/client_portal.py:241
#: app/routes/client_portal.py:266
msgid "Please log in to access the client portal."
msgstr ""

#: app/routes/client_portal.py:79 app/templates/errors/403.html:13
msgid "Access Denied"
msgstr ""

#: app/routes/client_portal.py:80 app/templates/errors/403.html:3
msgid "403 Forbidden"
msgstr ""

#: app/routes/client_portal.py:81
msgid "You don't have permission to access this resource. Client portal access may not be enabled for your account."
msgstr ""

#: app/routes/client_portal.py:85
msgid "Your account may not have client portal access enabled"
msgstr ""

#: app/routes/client_portal.py:86
msgid "Your account may be inactive"
msgstr ""

#: app/routes/client_portal.py:87
msgid "You may not be assigned to a client"
msgstr ""

#: app/routes/client_portal.py:105 app/templates/errors/404.html:3
#: app/templates/errors/404.html:14
msgid "Page Not Found"
msgstr ""

#: app/routes/client_portal.py:106
msgid "404 Not Found"
msgstr ""

#: app/routes/client_portal.py:107 app/templates/errors/404.html:17
msgid "The page you're looking for doesn't exist or has been moved."
msgstr ""

#: app/routes/client_portal.py:125 app/templates/errors/500.html:3
#: app/templates/errors/500.html:14
msgid "Server Error"
msgstr ""

#: app/routes/client_portal.py:126
msgid "500 Internal Server Error"
msgstr ""

#: app/routes/client_portal.py:127
msgid "An unexpected error occurred. Please try again later or contact support if the problem persists."
msgstr ""

#: app/routes/client_portal.py:204
msgid "Client portal access is not enabled for your account."
msgstr ""

#: app/routes/client_portal.py:209
msgid "Your client account is inactive."
msgstr ""

#: app/routes/client_portal.py:329
msgid "Username and password are required."
msgstr ""

#: app/routes/client_portal.py:336
msgid "Invalid username or password."
msgstr ""

#: app/routes/client_portal.py:343
#, python-format
msgid "Welcome, %(client_name)s!"
msgstr ""

#: app/routes/client_portal.py:357
msgid "You have been logged out."
msgstr ""

#: app/routes/client_portal.py:367
msgid "Invalid or missing password setup token."
msgstr ""

#: app/routes/client_portal.py:374
msgid "Invalid or expired password setup token. Please request a new one."
msgstr ""

#: app/routes/client_portal.py:383 app/routes/integrations.py:563
msgid "Password is required."
msgstr ""

#: app/routes/client_portal.py:399
msgid "Could not set password due to a database error."
msgstr ""

#: app/routes/client_portal.py:402
msgid "Password set successfully! You can now log in to the portal."
msgstr ""

#: app/routes/client_portal.py:428 app/routes/client_portal.py:564
#: app/routes/client_portal.py:590 app/routes/client_portal.py:669
msgid "Unable to load client portal data."
msgstr ""

#: app/routes/client_portal.py:525
msgid "widget_ids must be a list"
msgstr ""

#: app/routes/client_portal.py:528
#, python-format
msgid "Invalid widget id(s): %(ids)s"
msgstr ""

#: app/routes/client_portal.py:530
msgid "widget_order must be a list"
msgstr ""

#: app/routes/client_portal.py:534
#, python-format
msgid "Invalid widget id(s) in order: %(ids)s"
msgstr ""

#: app/routes/client_portal.py:620 app/routes/client_portal.py:1114
msgid "Invoice not found."
msgstr ""

#: app/routes/client_portal.py:653 app/routes/client_portal.py:1018
#: app/routes/client_portal.py:1063
msgid "Quote not found."
msgstr ""

#: app/routes/client_portal.py:718 app/routes/client_portal.py:752
#: app/routes/client_portal.py:844
msgid "Issue reporting is not available."
msgstr ""

#: app/routes/client_portal.py:769 app/routes/issues.py:189
#: app/routes/issues.py:338
msgid "Title is required."
msgstr ""

#: app/routes/client_portal.py:786 app/routes/integrations.py:1096
#: app/routes/integrations.py:1234 app/routes/issues.py:200
msgid "Invalid project selected."
msgstr ""

#: app/routes/client_portal.py:815 app/routes/issues.py:218
msgid "Could not create issue due to a database error."
msgstr ""

#: app/routes/client_portal.py:828
msgid "Issue reported successfully. We will review it shortly."
msgstr ""

#: app/routes/client_portal.py:850
msgid "Issue not found."
msgstr ""

#: app/routes/client_portal.py:916 app/routes/client_portal.py:936
#: app/routes/client_portal.py:976 app/routes/invoice_approvals.py:124
msgid "Approval not found."
msgstr ""

#: app/routes/client_portal.py:946 app/routes/client_portal.py:991
msgid "No contact found for approval."
msgstr ""

#: app/routes/client_portal.py:955
msgid "Time entry approved successfully."
msgstr ""

#: app/routes/client_portal.py:957
#, python-format
msgid "Error approving time entry: %(error)s"
msgstr ""

#: app/routes/client_portal.py:981
msgid "Rejection reason is required."
msgstr ""

#: app/routes/client_portal.py:998
msgid "Time entry rejected."
msgstr ""

#: app/routes/client_portal.py:1000
#, python-format
msgid "Error rejecting time entry: %(error)s"
msgstr ""

#: app/routes/client_portal.py:1022
msgid "This quote cannot be accepted."
msgstr ""

#: app/routes/client_portal.py:1049
msgid "Quote accepted successfully. We will contact you shortly."
msgstr ""

#: app/routes/client_portal.py:1067
msgid "This quote cannot be rejected."
msgstr ""

#: app/routes/client_portal.py:1097
msgid "Quote rejected. We appreciate your feedback."
msgstr ""

#: app/routes/client_portal.py:1119
msgid "This invoice is already paid."
msgstr ""

#: app/routes/client_portal.py:1127
msgid "Online payment is not currently available. Please contact us for payment instructions."
msgstr ""

#: app/routes/client_portal.py:1134 app/routes/payment_gateways.py:122
msgid "Payment gateway not yet supported."
msgstr ""

#: app/routes/client_portal.py:1151
msgid "Project not found."
msgstr ""

#: app/routes/client_portal.py:1157
msgid "Comment cannot be empty."
msgstr ""

#: app/routes/client_portal.py:1167
msgid "No contact found for commenting."
msgstr ""

#: app/routes/client_portal.py:1180
msgid "Comment added successfully."
msgstr ""

#: app/routes/client_portal.py:1259
#, python-format
msgid "Marked %(count)d notifications as read."
msgstr ""

#: app/routes/client_portal.py:1357
msgid "Attachment not found or access denied."
msgstr ""

#: app/routes/client_portal.py:1382
msgid "Unable to load report data."
msgstr ""

#: app/routes/client_portal.py:1415
msgid "Client Report"
msgstr ""

#: app/routes/client_portal.py:1415 app/templates/client_portal/reports.html:15
#, python-format
msgid "Last %(days)s days"
msgstr ""

#: app/routes/client_portal.py:1417
#: app/templates/inventory/purchase_orders/view.html:182
#: app/templates/inventory/stock_items/view.html:271
#: app/templates/inventory/suppliers/view.html:171
#: app/templates/inventory/warehouses/view.html:165
#: app/templates/reports/builder.html:53 app/templates/reports/builder.html:411
#: app/templates/reports/builder.html:584
#: app/templates/reports/custom_view.html:61
#: app/templates/reports/unpaid_hours_report.html:42
msgid "Summary"
msgstr ""

#: app/routes/client_portal.py:1418 app/templates/admin/dashboard.html:114
#: app/templates/analytics/dashboard.html:43
#: app/templates/analytics/dashboard_improved.html:35
#: app/templates/analytics/mobile_dashboard.html:31
#: app/templates/budget/project_detail.html:189
#: app/templates/client_portal/projects.html:46
#: app/templates/client_portal/reports.html:24
#: app/templates/client_portal/reports.html:91
#: app/templates/client_portal/widgets/stats.html:18
#: app/templates/clients/edit.html:184 app/templates/projects/dashboard.html:53
#: app/templates/projects/time_entries_overview.html:22
#: app/templates/reports/index.html:26
#: app/templates/reports/unpaid_hours_report.html:74
#: app/templates/reports/unpaid_hours_report.html:91
#: app/templates/timer/time_entries_overview.html:22
#: app/templates/user/profile.html:45
msgid "Total Hours"
msgstr ""

#: app/routes/client_portal.py:1420 app/templates/client_portal/reports.html:37
msgid "Total Invoiced"
msgstr ""

#: app/routes/client_portal.py:1421
#: app/templates/client_portal/invoices.html:40
#: app/templates/client_portal/reports.html:50
#: app/templates/invoices/list.html:131
#: app/templates/timer/_time_entries_list.html:164
#: app/templates/timer/edit_timer.html:360
#: app/templates/timer/edit_timer.html:481
#: app/templates/timer/time_entries_overview.html:105
#: app/templates/timer/time_entries_overview.html:198
#: app/templates/timer/view_timer.html:136
#: app/templates/timer/view_timer.html:140 app/utils/i18n_helpers.py:66
#: app/utils/i18n_helpers.py:78
msgid "Paid"
msgstr ""

#: app/routes/client_portal.py:1422 app/templates/admin/pdf_layout.html:1892
#: app/templates/admin/quote_pdf_layout.html:1698
#: app/templates/client_portal/invoice_detail.html:97
#: app/templates/client_portal/reports.html:63
#: app/templates/client_portal/widgets/stats.html:42
#: app/templates/invoices/edit.html:368
msgid "Outstanding"
msgstr ""

#: app/routes/client_portal.py:1424 app/templates/analytics/dashboard.html:101
#: app/templates/analytics/dashboard_improved.html:168
#: app/templates/email/weekly_summary.html:104
msgid "Hours by Project"
msgstr ""

#: app/routes/client_portal.py:1425 app/routes/reports.py:1017
#: app/templates/admin/dashboard.html:335 app/templates/approvals/view.html:35
#: app/templates/audit_logs/list.html:112 app/templates/audit_logs/view.html:89
#: app/templates/budget/dashboard.html:116
#: app/templates/calendar/event_detail.html:88
#: app/templates/calendar/event_form.html:116
#: app/templates/client_portal/approvals.html:119
#: app/templates/client_portal/issue_detail.html:63
#: app/templates/client_portal/new_issue.html:41
#: app/templates/client_portal/reports.html:89
#: app/templates/client_portal/reports.html:220
#: app/templates/client_portal/time_entries.html:24
#: app/templates/client_portal/time_entries.html:63
#: app/templates/client_portal/widgets/time_entries.html:21
#: app/templates/clients/view.html:350
#: app/templates/components/offline_indicator.html:87
#: app/templates/expenses/list.html:330 app/templates/gantt/view.html:28
#: app/templates/inventory/movements/list.html:40
#: app/templates/invoices/create.html:17
#: app/templates/invoices/pdf_default.html:76 app/templates/issues/edit.html:60
#: app/templates/issues/list.html:61 app/templates/issues/list.html:95
#: app/templates/issues/list.html:112 app/templates/issues/new.html:54
#: app/templates/issues/view.html:132
#: app/templates/kanban/create_column.html:39
#: app/templates/kiosk/dashboard.html:303 app/templates/main/dashboard.html:335
#: app/templates/main/dashboard.html:344 app/templates/main/dashboard.html:733
#: app/templates/main/search.html:33 app/templates/mileage/gps.html:18
#: app/templates/recurring_invoices/list.html:24
#: app/templates/recurring_invoices/list.html:38
#: app/templates/recurring_tasks/form.html:35
#: app/templates/recurring_tasks/list.html:31
#: app/templates/recurring_tasks/list.html:47
#: app/templates/reports/builder.html:94 app/templates/reports/index.html:225
#: app/templates/reports/index.html:233
#: app/templates/reports/iterative_view.html:44
#: app/templates/reports/iterative_view.html:55
#: app/templates/reports/time_entries_report.html:35
#: app/templates/reports/time_entries_report.html:106
#: app/templates/reports/time_entries_report.html:120
#: app/templates/reports/unpaid_hours_report.html:120
#: app/templates/reports/user_report.html:76
#: app/templates/tasks/_kanban.html:1245
#: app/templates/tasks/_tasks_list.html:48 app/templates/tasks/create.html:46
#: app/templates/tasks/edit.html:53 app/templates/tasks/edit.html:201
#: app/templates/tasks/my_tasks.html:149
#: app/templates/timer/bulk_entry.html:101
#: app/templates/timer/calendar.html:148 app/templates/timer/calendar.html:858
#: app/templates/timer/calendar.html:863
#: app/templates/timer/edit_timer.html:229
#: app/templates/timer/manual_entry.html:62
#: app/templates/timer/time_entries_overview.html:89
#: app/templates/timer/timer_page.html:138
#: app/templates/timer/view_timer.html:71 app/utils/pdf_generator.py:1143
msgid "Project"
msgstr ""

#: app/routes/client_portal.py:1425 app/routes/client_portal.py:1432
#: app/templates/admin/dashboard.html:506
#: app/templates/analytics/dashboard.html:221
#: app/templates/analytics/dashboard_improved.html:215
#: app/templates/analytics/mobile_dashboard.html:161
#: app/templates/budget/project_detail.html:206
#: app/templates/client_portal/reports.html:186
#: app/templates/main/dashboard.html:499
#: app/templates/projects/dashboard.html:454
#: app/templates/projects/dashboard.html:488
#: app/templates/projects/time_entries_overview.html:70
#: app/templates/projects/time_entries_overview.html:81
#: app/templates/reports/iterative_view.html:46
#: app/templates/reports/iterative_view.html:57
#: app/templates/reports/summary.html:43 app/templates/reports/summary.html:86
msgid "Hours"
msgstr ""

#: app/routes/client_portal.py:1425 app/templates/admin/dashboard.html:129
#: app/templates/analytics/dashboard.html:48
#: app/templates/analytics/dashboard_improved.html:44
#: app/templates/client_portal/reports.html:92
#: app/templates/reports/index.html:27
#: app/templates/timer/time_entries_overview.html:23
msgid "Billable Hours"
msgstr ""

#: app/routes/client_portal.py:1431
msgid "Time by Date"
msgstr ""

#: app/routes/client_portal.py:1432 app/routes/reports.py:1013
#: app/templates/admin/dashboard.html:337
#: app/templates/analytics/dashboard.html:222
#: app/templates/analytics/dashboard_improved.html:216
#: app/templates/analytics/mobile_dashboard.html:162
#: app/templates/approvals/view.html:57
#: app/templates/client_portal/approvals.html:141
#: app/templates/client_portal/quote_detail.html:35
#: app/templates/client_portal/quotes.html:27
#: app/templates/client_portal/quotes.html:43
#: app/templates/client_portal/reports.html:185
#: app/templates/client_portal/reports.html:219
#: app/templates/client_portal/time_entries.html:62
#: app/templates/client_portal/widgets/time_entries.html:20
#: app/templates/clients/view.html:349
#: app/templates/contacts/communication_form.html:52
#: app/templates/expenses/dashboard.html:187
#: app/templates/expenses/list.html:296
#: app/templates/inventory/adjustments/list.html:56
#: app/templates/inventory/adjustments/list.html:67
#: app/templates/inventory/movements/list.html:54
#: app/templates/inventory/movements/list.html:68
#: app/templates/inventory/reports/movement_history.html:70
#: app/templates/inventory/reports/movement_history.html:84
#: app/templates/inventory/stock_items/history.html:62
#: app/templates/inventory/stock_items/history.html:75
#: app/templates/inventory/stock_items/view.html:239
#: app/templates/inventory/stock_items/view.html:249
#: app/templates/inventory/transfers/list.html:38
#: app/templates/inventory/transfers/list.html:53
#: app/templates/inventory/warehouses/view.html:129
#: app/templates/inventory/warehouses/view.html:139
#: app/templates/invoices/edit.html:164
#: app/templates/invoices/pdf_default.html:123
#: app/templates/main/dashboard.html:337 app/templates/main/dashboard.html:366
#: app/templates/payments/list.html:157 app/templates/projects/add_cost.html:50
#: app/templates/projects/edit_cost.html:57 app/templates/quotes/create.html:98
#: app/templates/quotes/edit.html:146 app/templates/quotes/pdf_default.html:57
#: app/templates/reports/index.html:227 app/templates/reports/index.html:235
#: app/templates/reports/iterative_view.html:42
#: app/templates/reports/iterative_view.html:53
#: app/templates/reports/time_entries_report.html:102
#: app/templates/reports/time_entries_report.html:116
#: app/templates/reports/unpaid_hours_report.html:122
#: app/templates/reports/user_report.html:74 app/templates/tasks/view.html:75
#: app/templates/timer/_time_entries_list.html:34
#: app/templates/timer/_time_entries_list.html:57
#: app/utils/pdf_generator_fallback.py:291
#: app/utils/pdf_generator_fallback.py:555
msgid "Date"
msgstr ""

#: app/routes/client_portal_customization.py:50
#: app/routes/recurring_tasks.py:81 app/routes/time_approvals.py:48
#: app/routes/webhooks.py:103 app/routes/webhooks.py:126
#: app/routes/webhooks.py:169 app/routes/workflows.py:95
#: app/routes/workflows.py:116 app/routes/workforce.py:147
#: app/routes/workforce.py:169 app/routes/workforce.py:228
#: app/routes/workforce.py:251 app/routes/workforce.py:278
#: app/routes/workforce.py:331 app/routes/workforce.py:355
#: app/routes/workforce.py:398 app/routes/workforce.py:419
#: app/routes/workforce.py:565 app/routes/workforce.py:614
msgid "Access denied"
msgstr ""

#: app/routes/client_portal_customization.py:111
msgid "File too large. Maximum 5MB."
msgstr ""

#: app/routes/client_portal_customization.py:139
msgid "Portal customization updated successfully"
msgstr ""

#: app/routes/clients.py:89
msgid "Search query is too long. Maximum 200 characters."
msgstr ""

#: app/routes/clients.py:255 app/routes/clients.py:256
msgid "You do not have permission to create clients"
msgstr ""

#: app/routes/clients.py:285 app/routes/clients.py:601
msgid "Client name is required"
msgstr ""

#: app/routes/clients.py:296 app/routes/clients.py:610
msgid "A client with this name already exists"
msgstr ""

#: app/routes/clients.py:307
msgid "Invalid email address"
msgstr ""

#: app/routes/clients.py:316 app/routes/clients.py:620 app/routes/offers.py:92
#: app/routes/offers.py:224 app/routes/projects.py:349
#: app/routes/projects.py:953 app/routes/quotes.py:197
msgid "Invalid hourly rate format"
msgstr ""

#: app/routes/clients.py:325 app/routes/clients.py:631
msgid "Prepaid hours must be a positive number."
msgstr ""

#: app/routes/clients.py:337 app/routes/clients.py:645
msgid "Prepaid reset day must be between 1 and 28."
msgstr ""

#: app/routes/clients.py:359 app/routes/clients.py:364
#: app/routes/clients.py:686 app/routes/projects.py:433
#: app/routes/projects.py:1048
#, python-format
msgid "Custom field '%(field)s' is required"
msgstr ""

#: app/routes/clients.py:389
msgid "Could not create client due to a database error. Please check server logs."
msgstr ""

#: app/routes/clients.py:439 app/routes/clients.py:580
msgid "You do not have access to this client."
msgstr ""

#: app/routes/clients.py:585
msgid "You do not have permission to edit clients"
msgstr ""

#: app/routes/clients.py:660
msgid "Portal username is required when enabling portal access."
msgstr ""

#: app/routes/clients.py:669
msgid "This portal username is already in use by another client."
msgstr ""

#: app/routes/clients.py:719
msgid "Could not update client due to a database error. Please check server logs."
msgstr ""

#: app/routes/clients.py:742
msgid "You do not have permission to send portal emails"
msgstr ""

#: app/routes/clients.py:747
msgid "Client portal is not enabled for this client."
msgstr ""

#: app/routes/clients.py:751
msgid "Portal username is not set for this client."
msgstr ""

#: app/routes/clients.py:755
msgid "Client email address is not set. Cannot send password setup email."
msgstr ""

#: app/routes/clients.py:762
msgid "Could not generate password setup token due to a database error."
msgstr ""

#: app/routes/clients.py:777
#, python-format
msgid "Password setup email sent successfully to %(email)s"
msgstr ""

#: app/routes/clients.py:788
msgid "Email server is not configured. Please configure email settings in Admin → Email Configuration or set MAIL_SERVER environment variable."
msgstr ""

#: app/routes/clients.py:795
msgid "Failed to send password setup email. Please check email configuration and server logs for details."
msgstr ""

#: app/routes/clients.py:802
#, python-format
msgid "An error occurred while sending the email: %(error)s"
msgstr ""

#: app/routes/clients.py:815
msgid "You do not have permission to archive clients"
msgstr ""

#: app/routes/clients.py:819
msgid "Client is already inactive"
msgstr ""

#: app/routes/clients.py:844
msgid "You do not have permission to activate clients"
msgstr ""

#: app/routes/clients.py:848
msgid "Client is already active"
msgstr ""

#: app/routes/clients.py:874 app/routes/clients.py:931
msgid "You do not have permission to delete clients"
msgstr ""

#: app/routes/clients.py:879
msgid "Cannot delete client with existing projects. Please delete all projects first."
msgstr ""

#: app/routes/clients.py:886
msgid "Cannot delete client with existing invoices. Please delete all invoices first before deleting the client."
msgstr ""

#: app/routes/clients.py:904
msgid "Could not delete client due to a database error. Please check server logs."
msgstr ""

#: app/routes/clients.py:937
msgid "No clients selected for deletion"
msgstr ""

#: app/routes/clients.py:987
msgid "Could not delete clients due to a database error. Please check server logs."
msgstr ""

#: app/routes/clients.py:1007
msgid "No clients were deleted"
msgstr ""

#: app/routes/clients.py:1018
msgid "You do not have permission to change client status"
msgstr ""

#: app/routes/clients.py:1025
msgid "No clients selected"
msgstr ""

#: app/routes/clients.py:1029 app/routes/projects.py:1354
#: app/routes/tasks.py:632
msgid "Invalid status"
msgstr ""

#: app/routes/clients.py:1060
msgid "Could not update client status due to a database error. Please check server logs."
msgstr ""

#: app/routes/clients.py:1077
msgid "No clients were updated"
msgstr ""

#: app/routes/clients.py:1264 app/routes/comments.py:286
#: app/routes/expenses.py:1264 app/routes/invoices.py:1608
#: app/routes/projects.py:2023 app/routes/quotes.py:1127
#: app/routes/quotes.py:1987 app/routes/team_chat.py:477
msgid "No file provided"
msgstr ""

#: app/routes/clients.py:1273 app/routes/comments.py:295
#: app/routes/projects.py:2032 app/routes/quotes.py:1136
msgid "File type not allowed"
msgstr ""

#: app/routes/clients.py:1282 app/routes/comments.py:304
#: app/routes/projects.py:2041 app/routes/quotes.py:1145
msgid "File size exceeds maximum allowed size (10 MB)"
msgstr ""

#: app/routes/clients.py:1319 app/routes/clients.py:1335
#: app/routes/comments.py:337 app/routes/projects.py:2078
#: app/routes/projects.py:2094 app/routes/quotes.py:1191
msgid "Could not upload attachment due to a database error. Please check server logs."
msgstr ""

#: app/routes/clients.py:1332 app/routes/projects.py:2091
msgid "The attachments feature requires a database migration. Please run: flask db upgrade"
msgstr ""

#: app/routes/clients.py:1357 app/routes/comments.py:354
#: app/routes/projects.py:2116 app/routes/quotes.py:1212
msgid "Attachment uploaded successfully"
msgstr ""

#: app/routes/clients.py:1376 app/routes/comments.py:369
#: app/routes/projects.py:2135 app/routes/quotes.py:1236
#: app/routes/team_chat.py:424
msgid "File not found"
msgstr ""

#: app/routes/clients.py:1408 app/routes/projects.py:2169
#: app/routes/quotes.py:1275
msgid "Could not delete attachment due to a database error. Please check server logs."
msgstr ""

#: app/routes/clients.py:1418 app/routes/comments.py:402
#: app/routes/projects.py:2184 app/routes/quotes.py:1285
msgid "Attachment deleted successfully"
msgstr ""

#: app/routes/comments.py:30 app/routes/comments.py:117
msgid "Comment content cannot be empty"
msgstr ""

#: app/routes/comments.py:34
msgid "Comment must be associated with a project, task, or quote"
msgstr ""

#: app/routes/comments.py:40
msgid "Comment cannot be associated with multiple targets"
msgstr ""

#: app/routes/comments.py:64
msgid "Invalid parent comment"
msgstr ""

#: app/routes/comments.py:83
msgid "Comment added successfully"
msgstr ""

#: app/routes/comments.py:85
msgid "Error adding comment"
msgstr ""

#: app/routes/comments.py:88
#, python-format
msgid "Error adding comment: %(error)s"
msgstr ""

#: app/routes/comments.py:109
msgid "You do not have permission to edit this comment"
msgstr ""

#: app/routes/comments.py:126
msgid "Comment updated successfully"
msgstr ""

#: app/routes/comments.py:139
#, python-format
msgid "Error updating comment: %(error)s"
msgstr ""

#: app/routes/comments.py:152
msgid "You do not have permission to delete this comment"
msgstr ""

#: app/routes/comments.py:167
msgid "Comment deleted successfully"
msgstr ""

#: app/routes/comments.py:180
#, python-format
msgid "Error deleting comment: %(error)s"
msgstr ""

#: app/routes/comments.py:274
msgid "You do not have permission to add attachments to this comment"
msgstr ""

#: app/routes/comments.py:350
#, python-format
msgid "Error uploading attachment: %(error)s"
msgstr ""

#: app/routes/comments.py:386 app/routes/quotes.py:1258
msgid "You do not have permission to delete this attachment"
msgstr ""

#: app/routes/comments.py:404
msgid "Error deleting attachment"
msgstr ""

#: app/routes/comments.py:406
#, python-format
msgid "Error deleting attachment: %(error)s"
msgstr ""

#: app/routes/contacts.py:62
msgid "Contact created successfully"
msgstr ""

#: app/routes/contacts.py:66
#, python-format
msgid "Error creating contact: %(error)s"
msgstr ""

#: app/routes/contacts.py:109
msgid "Contact updated successfully"
msgstr ""

#: app/routes/contacts.py:113
#, python-format
msgid "Error updating contact: %(error)s"
msgstr ""

#: app/routes/contacts.py:129
msgid "Contact deleted successfully"
msgstr ""

#: app/routes/contacts.py:132
#, python-format
msgid "Error deleting contact: %(error)s"
msgstr ""

#: app/routes/contacts.py:146
msgid "Contact set as primary"
msgstr ""

#: app/routes/contacts.py:149
#, python-format
msgid "Error setting primary contact: %(error)s"
msgstr ""

#: app/routes/contacts.py:192
msgid "Communication recorded successfully"
msgstr ""

#: app/routes/contacts.py:196
#, python-format
msgid "Error recording communication: %(error)s"
msgstr ""

#: app/routes/custom_field_definitions.py:44
#: app/routes/custom_field_definitions.py:101 app/routes/link_templates.py:54
#: app/routes/link_templates.py:110
msgid "Field key is required"
msgstr ""

#: app/routes/custom_field_definitions.py:48
#: app/routes/custom_field_definitions.py:105 app/routes/kanban.py:240
msgid "Label is required"
msgstr ""

#: app/routes/custom_field_definitions.py:53
#: app/routes/custom_field_definitions.py:110
msgid "Field key must contain only letters, numbers, and underscores"
msgstr ""

#: app/routes/custom_field_definitions.py:59
#: app/routes/custom_field_definitions.py:118
msgid "A custom field definition with this key already exists"
msgstr ""

#: app/routes/custom_field_definitions.py:75
msgid "Could not create custom field definition due to a database error."
msgstr ""

#: app/routes/custom_field_definitions.py:78
msgid "Custom field definition created successfully"
msgstr ""

#: app/routes/custom_field_definitions.py:131
msgid "Could not update custom field definition due to a database error."
msgstr ""

#: app/routes/custom_field_definitions.py:134
msgid "Custom field definition updated successfully"
msgstr ""

#: app/routes/custom_field_definitions.py:167
msgid "Could not remove custom field from clients due to a database error."
msgstr ""

#: app/routes/custom_field_definitions.py:174
msgid "Could not delete custom field definition due to a database error."
msgstr ""

#: app/routes/custom_field_definitions.py:178
#, python-format
msgid "Custom field definition deleted successfully. The field was removed from %(count)d client(s)."
msgstr ""

#: app/routes/custom_field_definitions.py:185
msgid "Custom field definition deleted successfully"
msgstr ""

#: app/routes/custom_reports.py:43 app/routes/custom_reports.py:661
msgid "You do not have permission to edit this report."
msgstr ""

#: app/routes/custom_reports.py:164
#, python-format
msgid "Report %(action)s successfully"
msgstr ""

#: app/routes/custom_reports.py:192
msgid "You do not have permission to view this report."
msgstr ""

#: app/routes/custom_reports.py:699
msgid "You do not have permission to delete this report view."
msgstr ""

#: app/routes/custom_reports.py:710
#, python-format
msgid "Cannot delete report view: it is used in %(count)d scheduled report(s)."
msgstr ""

#: app/routes/custom_reports.py:716
#, python-format
msgid "Report view \"%(name)s\" deleted successfully."
msgstr ""

#: app/routes/custom_reports.py:718
msgid "Could not delete report view due to a database error"
msgstr ""

#: app/routes/deals.py:107 app/routes/deals.py:192
msgid "Invalid deal value"
msgstr ""

#: app/routes/deals.py:144
msgid "Deal created successfully"
msgstr ""

#: app/routes/deals.py:148
#, python-format
msgid "Error creating deal: %(error)s"
msgstr ""

#: app/routes/deals.py:224
msgid "Deal updated successfully"
msgstr ""

#: app/routes/deals.py:228
#, python-format
msgid "Error updating deal: %(error)s"
msgstr ""

#: app/routes/deals.py:258
msgid "Deal closed as won"
msgstr ""

#: app/routes/deals.py:261 app/routes/deals.py:289
#, python-format
msgid "Error closing deal: %(error)s"
msgstr ""

#: app/routes/deals.py:286
msgid "Deal closed as lost"
msgstr ""

#: app/routes/deals.py:326 app/routes/leads.py:339
msgid "Activity recorded successfully"
msgstr ""

#: app/routes/deals.py:330 app/routes/leads.py:343
#, python-format
msgid "Error recording activity: %(error)s"
msgstr ""

#: app/routes/expense_categories.py:53 app/routes/expense_categories.py:143
msgid "Category name is required"
msgstr ""

#: app/routes/expense_categories.py:88
msgid "Expense category created successfully"
msgstr ""

#: app/routes/expense_categories.py:93 app/routes/expense_categories.py:100
msgid "Error creating expense category"
msgstr ""

#: app/routes/expense_categories.py:174
msgid "Expense category updated successfully"
msgstr ""

#: app/routes/expense_categories.py:179 app/routes/expense_categories.py:186
msgid "Error updating expense category"
msgstr ""

#: app/routes/expense_categories.py:203
msgid "Expense category deactivated successfully"
msgstr ""

#: app/routes/expense_categories.py:207 app/routes/expense_categories.py:213
msgid "Error deactivating expense category"
msgstr ""

#: app/routes/expenses.py:286
msgid "Title is required"
msgstr ""

#: app/routes/expenses.py:290
msgid "Category is required"
msgstr ""

#: app/routes/expenses.py:294
msgid "Amount is required"
msgstr ""

#: app/routes/expenses.py:298
msgid "Expense date is required"
msgstr ""

#: app/routes/expenses.py:305 app/routes/expenses.py:555
#: app/routes/expenses.py:1388 app/routes/mileage.py:362
#: app/routes/per_diem.py:312 app/routes/projects.py:1618
#: app/routes/projects.py:1689 app/routes/reports.py:129
#: app/routes/reports.py:189 app/routes/reports.py:369
#: app/routes/reports.py:696 app/routes/reports.py:882
#: app/routes/reports.py:964 app/routes/reports.py:1005
#: app/routes/reports.py:1075 app/routes/reports.py:1155
#: app/routes/reports.py:1252 app/routes/reports.py:1427
#: app/routes/reports.py:1506 app/routes/reports.py:1657
#: app/routes/reports.py:1753 app/routes/timer.py:1703
#: app/routes/weekly_goals.py:89 app/templates/timer/calendar.html:1152
msgid "Invalid date format"
msgstr ""

#: app/routes/expenses.py:313 app/routes/expenses.py:563
#: app/routes/expenses.py:1396 app/routes/projects.py:1611
#: app/routes/projects.py:1682
msgid "Invalid amount format"
msgstr ""

#: app/routes/expenses.py:333 app/routes/issues.py:184
#: app/routes/mileage.py:373 app/routes/per_diem.py:368
#: app/routes/recurring_invoices.py:100 app/routes/timer.py:122
#: app/routes/timer.py:1362
msgid "Selected project does not match the locked client."
msgstr ""

#: app/routes/expenses.py:372 app/routes/expenses.py:632
msgid "Error saving receipt file. Please check directory permissions."
msgstr ""

#: app/routes/expenses.py:375 app/routes/expenses.py:635
msgid "Error uploading receipt file."
msgstr ""

#: app/routes/expenses.py:403
msgid "Expense created successfully"
msgstr ""

#: app/routes/expenses.py:418 app/routes/expenses.py:423
#: app/routes/expenses.py:1443 app/routes/expenses.py:1448
msgid "Error creating expense"
msgstr ""

#: app/routes/expenses.py:435
msgid "You do not have permission to view this expense"
msgstr ""

#: app/routes/expenses.py:507
msgid "You do not have permission to edit this expense"
msgstr ""

#: app/routes/expenses.py:512
msgid "Cannot edit approved or reimbursed expenses"
msgstr ""

#: app/routes/expenses.py:548 app/routes/expenses.py:1381
#: app/routes/mileage.py:355 app/routes/per_diem.py:304
#: app/routes/per_diem.py:764 app/routes/per_diem.py:820
msgid "Please fill in all required fields"
msgstr ""

#: app/routes/expenses.py:640
msgid "Expense updated successfully"
msgstr ""

#: app/routes/expenses.py:645 app/routes/expenses.py:650
msgid "Error updating expense"
msgstr ""

#: app/routes/expenses.py:662
msgid "You do not have permission to delete this expense"
msgstr ""

#: app/routes/expenses.py:667
msgid "Cannot delete approved or invoiced expenses"
msgstr ""

#: app/routes/expenses.py:684
msgid "Expense deleted successfully"
msgstr ""

#: app/routes/expenses.py:688 app/routes/expenses.py:692
msgid "Error deleting expense"
msgstr ""

#: app/routes/expenses.py:704
msgid "No expenses selected for deletion"
msgstr ""

#: app/routes/expenses.py:752
msgid "Could not delete expenses due to a database error. Please check server logs."
msgstr ""

#: app/routes/expenses.py:757
#, python-format
msgid "Successfully deleted %(count)d expense(s)"
msgstr ""

#: app/routes/expenses.py:761
#, python-format
msgid "Skipped %(count)d expense(s): %(errors)s"
msgstr ""

#: app/routes/expenses.py:775
msgid "No expenses selected"
msgstr ""

#: app/routes/expenses.py:781 app/routes/invoices.py:834
#: app/routes/mileage.py:631 app/routes/payments.py:544
#: app/routes/per_diem.py:617 app/routes/tasks.py:918
msgid "Invalid status value"
msgstr ""

#: app/routes/expenses.py:811
msgid "Could not update expenses due to a database error"
msgstr ""

#: app/routes/expenses.py:815
#, python-format
msgid "Successfully updated %(count)d expense(s) to %(status)s"
msgstr ""

#: app/routes/expenses.py:824
#, python-format
msgid "Skipped %(count)d expense(s): %(summary)s"
msgstr ""

#: app/routes/expenses.py:826
#, python-format
msgid "Skipped %(count)d expense(s) (no permission)"
msgstr ""

#: app/routes/expenses.py:836
msgid "Only administrators can approve expenses"
msgstr ""

#: app/routes/expenses.py:842
msgid "Only pending expenses can be approved"
msgstr ""

#: app/routes/expenses.py:850
msgid "Expense approved successfully"
msgstr ""

#: app/routes/expenses.py:854 app/routes/expenses.py:858
msgid "Error approving expense"
msgstr ""

#: app/routes/expenses.py:868
msgid "Only administrators can reject expenses"
msgstr ""

#: app/routes/expenses.py:874
msgid "Only pending expenses can be rejected"
msgstr ""

#: app/routes/expenses.py:880 app/routes/mileage.py:735
#: app/routes/per_diem.py:709 app/routes/quotes.py:1389
#: app/routes/time_approvals.py:92 app/routes/workforce.py:173
msgid "Rejection reason is required"
msgstr ""

#: app/routes/expenses.py:886
msgid "Expense rejected"
msgstr ""

#: app/routes/expenses.py:890 app/routes/expenses.py:894
msgid "Error rejecting expense"
msgstr ""

#: app/routes/expenses.py:904
msgid "Only administrators can mark expenses as reimbursed"
msgstr ""

#: app/routes/expenses.py:910
msgid "Only approved expenses can be marked as reimbursed"
msgstr ""

#: app/routes/expenses.py:914
msgid "This expense is not marked as reimbursable"
msgstr ""

#: app/routes/expenses.py:921
msgid "Expense marked as reimbursed"
msgstr ""

#: app/routes/expenses.py:925 app/routes/expenses.py:929
msgid "Error marking expense as reimbursed"
msgstr ""

#: app/routes/expenses.py:1260
msgid "OCR is not available. Please contact your administrator."
msgstr ""

#: app/routes/expenses.py:1274
msgid "Invalid file type. Allowed types: png, jpg, jpeg, gif, pdf"
msgstr ""

#: app/routes/expenses.py:1329
msgid "Receipt scanned successfully! You can now create an expense with the extracted data."
msgstr ""

#: app/routes/expenses.py:1334
msgid "Error scanning receipt. Please try again or enter the expense manually."
msgstr ""

#: app/routes/expenses.py:1347
msgid "No scanned receipt data found. Please scan a receipt first."
msgstr ""

#: app/routes/expenses.py:1434
msgid "Expense created successfully from scanned receipt"
msgstr ""

#: app/routes/integrations.py:67
msgid "Permission denied."
msgstr ""

#: app/routes/integrations.py:105 app/routes/integrations.py:1372
msgid "Integration provider not available."
msgstr ""

#: app/routes/integrations.py:111 app/templates/integrations/manage.html:665
msgid "Trello integration must be configured by an administrator."
msgstr ""

#: app/routes/integrations.py:132
msgid "Only administrators can set up global integrations."
msgstr ""

#: app/routes/integrations.py:154 app/routes/integrations.py:275
msgid "Could not initialize connector."
msgstr ""

#: app/routes/integrations.py:185
msgid "Google Calendar OAuth credentials need to be configured first. Redirecting to setup..."
msgstr ""

#: app/routes/integrations.py:189
msgid "Google Calendar integration needs to be configured by an administrator first."
msgstr ""

#: app/routes/integrations.py:191
msgid "OAuth credentials not configured. Please configure them first."
msgstr ""

#: app/routes/integrations.py:194
msgid "Integration not configured. Please ask an administrator to set up OAuth credentials."
msgstr ""

#: app/routes/integrations.py:210
#, python-format
msgid "Authorization failed: %(error)s"
msgstr ""

#: app/routes/integrations.py:214
msgid "Authorization code not received."
msgstr ""

#: app/routes/integrations.py:225 app/routes/integrations.py:509
#: app/routes/integrations.py:809 app/routes/integrations.py:857
#: app/routes/integrations.py:898 app/routes/integrations.py:923
#: app/routes/integrations.py:952
msgid "Integration not found."
msgstr ""

#: app/routes/integrations.py:262
msgid "Invalid state parameter. Please try connecting again."
msgstr ""

#: app/routes/integrations.py:297
msgid "Integration connected successfully!"
msgstr ""

#: app/routes/integrations.py:302
#, python-format
msgid "Integration connected but connection test failed: %(message)s"
msgstr ""

#: app/routes/integrations.py:312
#, python-format
msgid "Error connecting integration: %(error)s"
msgstr ""

#: app/routes/integrations.py:366 app/routes/integrations.py:1399
msgid "Only administrators can configure global integrations."
msgstr ""

#: app/routes/integrations.py:379
msgid "Trello API Key is required."
msgstr ""

#: app/routes/integrations.py:385
msgid "Trello API Secret is required for new setup."
msgstr ""

#: app/routes/integrations.py:411
msgid "OAuth Client ID is required."
msgstr ""

#: app/routes/integrations.py:417
msgid "OAuth Client Secret is required for new setup."
msgstr ""

#: app/routes/integrations.py:473
msgid "GitLab Instance URL must be a valid URL (e.g., https://gitlab.com)."
msgstr ""

#: app/routes/integrations.py:476
msgid "GitLab Instance URL format is invalid."
msgstr ""

#: app/routes/integrations.py:492
msgid "Integration credentials updated successfully."
msgstr ""

#: app/routes/integrations.py:495
msgid "Users can now connect their Google Calendar. They will be automatically redirected to Google for authorization."
msgstr ""

#: app/routes/integrations.py:502
msgid "Failed to update credentials."
msgstr ""

#: app/routes/integrations.py:506
msgid "Invalid action for this integration."
msgstr ""

#: app/routes/integrations.py:513
msgid "Linear API key is required."
msgstr ""

#: app/routes/integrations.py:527
msgid "Linear API key saved. Use Sync to import issues as tasks."
msgstr ""

#: app/routes/integrations.py:529
msgid "Could not save API key."
msgstr ""

#: app/routes/integrations.py:536
msgid "This action is only available for CalDAV integrations."
msgstr ""

#: app/routes/integrations.py:542 app/routes/integrations.py:594
msgid "Integration not found. Please connect the integration first."
msgstr ""

#: app/routes/integrations.py:550 app/routes/integrations.py:1084
msgid "Username is required."
msgstr ""

#: app/routes/integrations.py:556 app/routes/integrations.py:1086
msgid "Password is required for new setup."
msgstr ""

#: app/routes/integrations.py:578
msgid "CalDAV credentials updated successfully."
msgstr ""

#: app/routes/integrations.py:584
#, python-format
msgid "Failed to update CalDAV credentials: %(message)s"
msgstr ""

#: app/routes/integrations.py:644
#, python-format
msgid "Invalid number for field %(field)s"
msgstr ""

#: app/routes/integrations.py:651 app/routes/integrations.py:673
#, python-format
msgid "Field %(field)s is required"
msgstr ""

#: app/routes/integrations.py:664 app/routes/integrations.py:1451
#, python-format
msgid "Invalid JSON for field %(field)s"
msgstr ""

#: app/routes/integrations.py:697
msgid "Integration configuration updated successfully."
msgstr ""

#: app/routes/integrations.py:700
msgid "Failed to update configuration."
msgstr ""

#: app/routes/integrations.py:879
msgid "Connection test successful!"
msgstr ""

#: app/routes/integrations.py:881
#, python-format
msgid "Connection test failed: %(message)s"
msgstr ""

#: app/routes/integrations.py:904
msgid "Integration deleted successfully."
msgstr ""

#: app/routes/integrations.py:932
msgid "Integration reset successfully. You can now reconfigure it."
msgstr ""

#: app/routes/integrations.py:957
msgid "Connector not available."
msgstr ""

#: app/routes/integrations.py:975
#, python-format
msgid "Sync completed successfully. %(details)s"
msgstr ""

#: app/routes/integrations.py:979
#, python-format
msgid "Sync failed: %(message)s"
msgstr ""

#: app/routes/integrations.py:1001
#, python-format
msgid "Error during sync: %(error)s"
msgstr ""

#: app/routes/integrations.py:1051
msgid "Either server URL or calendar URL is required."
msgstr ""

#: app/routes/integrations.py:1060
msgid "Server URL must be a valid URL (e.g., https://mail.example.com/dav)."
msgstr ""

#: app/routes/integrations.py:1062 app/routes/integrations.py:1225
msgid "Server URL format is invalid."
msgstr ""

#: app/routes/integrations.py:1070
msgid "Calendar URL must be a valid URL."
msgstr ""

#: app/routes/integrations.py:1072
msgid "Calendar URL format is invalid."
msgstr ""

#: app/routes/integrations.py:1094 app/routes/integrations.py:1232
msgid "Selected project not found or is not active."
msgstr ""

#: app/routes/integrations.py:1101
msgid "Lookback days must be between 1 and 365."
msgstr ""

#: app/routes/integrations.py:1103 app/routes/integrations.py:1241
msgid "Lookback days must be a valid number."
msgstr ""

#: app/routes/integrations.py:1148
#, python-format
msgid "Failed to save credentials: %(message)s"
msgstr ""

#: app/routes/integrations.py:1164
msgid "CalDAV integration configured successfully."
msgstr ""

#: app/routes/integrations.py:1167
msgid "Failed to save CalDAV configuration."
msgstr ""

#: app/routes/integrations.py:1218
msgid "ActivityWatch server URL is required."
msgstr ""

#: app/routes/integrations.py:1223
msgid "Server URL must be a valid URL (e.g., http://localhost:5600)."
msgstr ""

#: app/routes/integrations.py:1239
msgid "Lookback days must be between 1 and 90."
msgstr ""

#: app/routes/integrations.py:1276
msgid "ActivityWatch integration configured successfully."
msgstr ""

#: app/routes/integrations.py:1282
#, python-format
msgid "Configuration saved but connection test failed: %(message)s"
msgstr ""

#: app/routes/integrations.py:1288
msgid "Failed to save ActivityWatch configuration."
msgstr ""

#: app/routes/integrations.py:1365
msgid "Setup wizard not available for this integration."
msgstr ""

#: app/routes/integrations.py:1378
msgid "Connector class not found."
msgstr ""

#: app/routes/integrations.py:1512
msgid "Integration configured successfully!"
msgstr ""

#: app/routes/integrations.py:1519
msgid "Failed to save configuration."
msgstr ""

#: app/routes/integrations.py:1535
msgid "OAuth Setup"
msgstr ""

#: app/routes/integrations.py:1535 app/routes/integrations.py:1541
msgid "Connection Test"
msgstr ""

#: app/routes/integrations.py:1535 app/routes/integrations.py:1537
#: app/routes/integrations.py:1538 app/routes/integrations.py:1539
#: app/routes/integrations.py:1540
msgid "Sync Config"
msgstr ""

#: app/routes/integrations.py:1535 app/templates/admin/modules.html:179
#: app/templates/admin/modules.html:221
#: app/templates/admin/oidc_setup_wizard.html:41
#: app/templates/admin/pdf_layout.html:1909
#: app/templates/admin/quote_pdf_layout.html:1715
msgid "Advanced"
msgstr ""

#: app/routes/integrations.py:1535 app/routes/integrations.py:1536
#: app/routes/integrations.py:1537 app/routes/integrations.py:1538
#: app/routes/integrations.py:1539 app/routes/integrations.py:1540
#: app/routes/integrations.py:1541 app/routes/integrations.py:1542
#: app/routes/integrations.py:1543
#: app/templates/analytics/dashboard_improved.html:224
#: app/templates/tasks/create.html:73 app/templates/tasks/create.html:86
#: app/templates/tasks/create.html:477 app/templates/tasks/edit.html:82
#: app/templates/tasks/edit.html:657 app/templates/tasks/my_tasks.html:74
#: app/templates/tasks/my_tasks.html:133 app/utils/i18n_helpers.py:18
#: app/utils/i18n_helpers.py:30
msgid "Review"
msgstr ""

#: app/routes/integrations.py:1536
msgid "Instance"
msgstr ""

#: app/routes/integrations.py:1536 app/routes/integrations.py:1537
#: app/routes/integrations.py:1538 app/routes/integrations.py:1539
#: app/routes/integrations.py:1540 app/routes/integrations.py:1542
#: app/routes/integrations.py:1543
msgid "OAuth"
msgstr ""

#: app/routes/integrations.py:1536 app/routes/integrations.py:1539
#: app/templates/integrations/wizard_github.html:50
#: app/templates/integrations/wizard_github.html:197
msgid "Repositories"
msgstr ""

#: app/routes/integrations.py:1536
msgid "Sync Settings"
msgstr ""

#: app/routes/integrations.py:1537 app/templates/leads/list.html:51
#: app/templates/leads/list.html:65 app/templates/leads/view.html:43
#: app/templates/setup/initial_setup.html:135
msgid "Company"
msgstr ""

#: app/routes/integrations.py:1537 app/routes/integrations.py:1538
msgid "Mappings"
msgstr ""

#: app/routes/integrations.py:1538
msgid "Tenant"
msgstr ""

#: app/routes/integrations.py:1539 app/templates/admin/webhooks/form.html:7
#: app/templates/admin/webhooks/list.html:7
#: app/templates/admin/webhooks/list.html:12
#: app/templates/admin/webhooks/view.html:7 app/templates/base.html:1079
msgid "Webhooks"
msgstr ""

#: app/routes/integrations.py:1540
msgid "Workspace"
msgstr ""

#: app/routes/integrations.py:1540 app/templates/admin/oidc_user_detail.html:61
#: app/templates/analytics/mobile_dashboard.html:49
#: app/templates/auth/login.html:37 app/templates/base.html:602
#: app/templates/client_portal/base.html:257
#: app/templates/client_portal/base.html:342
#: app/templates/client_portal/dashboard.html:76
#: app/templates/client_portal/project_comments.html:9
#: app/templates/client_portal/projects.html:4
#: app/templates/client_portal/projects.html:9
#: app/templates/client_portal/projects.html:14
#: app/templates/client_portal/widgets/projects.html:8
#: app/templates/components/activity_feed_widget.html:23
#: app/templates/components/offline_indicator.html:84
#: app/templates/integrations/wizard_asana.html:110
#: app/templates/integrations/wizard_gitlab.html:148
#: app/templates/integrations/wizard_jira.html:134
#: app/templates/partials/_bottom_nav.html:78
#: app/templates/partials/_bottom_nav.html:82
#: app/templates/projects/add_cost.html:11
#: app/templates/projects/edit_cost.html:11
#: app/templates/projects/time_entries_overview.html:8
#: app/templates/projects/view.html:6 app/templates/reports/builder.html:367
#: app/templates/reports/unpaid_hours_report.html:76
#: app/templates/reports/unpaid_hours_report.html:97
msgid "Projects"
msgstr ""

#: app/routes/integrations.py:1541
msgid "API Keys"
msgstr ""

#: app/routes/integrations.py:1542 app/routes/integrations.py:1543
#: app/templates/admin/integrations/setup.html:100
#: app/templates/integrations/manage.html:151
#: app/templates/integrations/wizard_microsoft_teams.html:18
#: app/templates/integrations/wizard_microsoft_teams.html:82
#: app/templates/integrations/wizard_outlook_calendar.html:18
#: app/templates/integrations/wizard_outlook_calendar.html:82
#: app/templates/integrations/wizard_xero.html:43
#: app/templates/integrations/wizard_xero.html:179
msgid "Tenant ID"
msgstr ""

#: app/routes/integrations.py:1554
#, python-format
msgid "%(name)s Setup Wizard"
msgstr ""

#: app/routes/integrations.py:1555
#, python-format
msgid "Guided step-by-step configuration for %(name)s"
msgstr ""

#: app/routes/integrations.py:1593
msgid "Integration not found"
msgstr ""

#: app/routes/integrations.py:1598
msgid "Connector not available"
msgstr ""

#: app/routes/inventory.py:190
msgid "SKU is required"
msgstr ""

#: app/routes/inventory.py:194
msgid "Name is required"
msgstr ""

#: app/routes/inventory.py:201
#, python-format
msgid "Invalid SKU: %(error)s"
msgstr ""

#: app/routes/inventory.py:208
#, python-format
msgid "Invalid name: %(error)s"
msgstr ""

#: app/routes/inventory.py:214 app/routes/inventory.py:448
msgid "SKU already exists. Please use a different SKU."
msgstr ""

#: app/routes/inventory.py:294
msgid "Stock item created successfully."
msgstr ""

#: app/routes/inventory.py:299
#, python-format
msgid "Error creating stock item: %(error)s"
msgstr ""

#: app/routes/inventory.py:565
msgid "Stock item updated successfully."
msgstr ""

#: app/routes/inventory.py:570
#, python-format
msgid "Error updating stock item: %(error)s"
msgstr ""

#: app/routes/inventory.py:590
msgid "Cannot delete stock item with existing stock or movement history."
msgstr ""

#: app/routes/inventory.py:598
msgid "Stock item deleted successfully."
msgstr ""

#: app/routes/inventory.py:602
#, python-format
msgid "Error deleting stock item: %(error)s"
msgstr ""

#: app/routes/inventory.py:640 app/routes/inventory.py:710
msgid "Warehouse code already exists. Please use a different code."
msgstr ""

#: app/routes/inventory.py:659
msgid "Warehouse created successfully."
msgstr ""

#: app/routes/inventory.py:664
#, python-format
msgid "Error creating warehouse: %(error)s"
msgstr ""

#: app/routes/inventory.py:726
msgid "Warehouse updated successfully."
msgstr ""

#: app/routes/inventory.py:731
#, python-format
msgid "Error updating warehouse: %(error)s"
msgstr ""

#: app/routes/inventory.py:747
msgid "Cannot delete warehouse with existing stock. Please transfer or remove all stock first."
msgstr ""

#: app/routes/inventory.py:755
msgid "Warehouse deleted successfully."
msgstr ""

#: app/routes/inventory.py:759
#, python-format
msgid "Error deleting warehouse: %(error)s"
msgstr ""

#: app/routes/inventory.py:945 app/routes/inventory.py:1027
msgid "Stock item is not trackable. Devaluation requires trackable items."
msgstr ""

#: app/routes/inventory.py:947
msgid "Devaluation quantity must be positive"
msgstr ""

#: app/routes/inventory.py:951 app/routes/inventory.py:1031
msgid "Stock item must have a default cost to perform devaluation"
msgstr ""

#: app/routes/inventory.py:956
msgid "Devaluation percent is required when using percent method"
msgstr ""

#: app/routes/inventory.py:960 app/routes/inventory.py:1040
msgid "Invalid devaluation percent value"
msgstr ""

#: app/routes/inventory.py:962 app/routes/inventory.py:1042
msgid "Devaluation percent cannot be negative"
msgstr ""

#: app/routes/inventory.py:964 app/routes/inventory.py:1044
msgid "Devaluation percent cannot exceed 100%"
msgstr ""

#: app/routes/inventory.py:968
msgid "New unit cost is required when using fixed cost method"
msgstr ""

#: app/routes/inventory.py:972 app/routes/inventory.py:1054
msgid "Invalid unit cost value"
msgstr ""

#: app/routes/inventory.py:974 app/routes/inventory.py:1056
msgid "Unit cost cannot be negative"
msgstr ""

#: app/routes/inventory.py:976 app/routes/inventory.py:1058
msgid "Invalid devaluation method"
msgstr ""

#: app/routes/inventory.py:984 app/routes/inventory.py:1070
#: app/routes/inventory.py:1084
#, python-format
msgid "Devaluation cost (%(devalued)s) cannot be greater than original cost (%(original)s)"
msgstr ""

#: app/routes/inventory.py:998
#, python-format
msgid "Insufficient stock to devalue. Available: %(available)s, Requested: %(requested)s"
msgstr ""

#: app/routes/inventory.py:1013
msgid "Stock devaluation recorded successfully."
msgstr ""

#: app/routes/inventory.py:1020
msgid "Return movements must use a positive quantity"
msgstr ""

#: app/routes/inventory.py:1022
msgid "Waste movements must use a negative quantity"
msgstr ""

#: app/routes/inventory.py:1036
msgid "Devaluation percent is required when devaluation is enabled"
msgstr ""

#: app/routes/inventory.py:1050
msgid "New unit cost is required when devaluation is enabled"
msgstr ""

#: app/routes/inventory.py:1098
#, python-format
msgid "Insufficient stock to waste. Available: %(available)s, Requested: %(requested)s"
msgstr ""

#: app/routes/inventory.py:1120
#, python-format
msgid "Failed to devalue stock before waste: %(error)s"
msgstr ""

#: app/routes/inventory.py:1142
#, python-format
msgid "Failed to record movement: %(error)s"
msgstr ""

#: app/routes/inventory.py:1156
msgid "Return movement recorded successfully with devaluation applied."
msgstr ""

#: app/routes/inventory.py:1158
msgid "Waste movement recorded successfully with devaluation applied."
msgstr ""

#: app/routes/inventory.py:1160
msgid "Stock movement recorded successfully."
msgstr ""

#: app/routes/inventory.py:1166
#, python-format
msgid "Error: %(error)s"
msgstr ""

#: app/routes/inventory.py:1170
#, python-format
msgid "Error recording stock movement: %(error)s"
msgstr ""

#: app/routes/inventory.py:1242
msgid "Source and destination warehouses must be different."
msgstr ""

#: app/routes/inventory.py:1255
msgid "Insufficient stock available in source warehouse."
msgstr ""

#: app/routes/inventory.py:1271
msgid "Stock item not found."
msgstr ""

#: app/routes/inventory.py:1274
msgid "Source warehouse not found."
msgstr ""

#: app/routes/inventory.py:1277
msgid "Destination warehouse not found."
msgstr ""

#: app/routes/inventory.py:1320
msgid "Stock transfer completed successfully."
msgstr ""

#: app/routes/inventory.py:1325
#, python-format
msgid "Error creating transfer: %(error)s"
msgstr ""

#: app/routes/inventory.py:1425
msgid "Stock adjustment recorded successfully."
msgstr ""

#: app/routes/inventory.py:1430
#, python-format
msgid "Error recording adjustment: %(error)s"
msgstr ""

#: app/routes/inventory.py:1574
msgid "Reservation fulfilled successfully."
msgstr ""

#: app/routes/inventory.py:1577
#, python-format
msgid "Error fulfilling reservation: %(error)s"
msgstr ""

#: app/routes/inventory.py:1595
msgid "Reservation cancelled successfully."
msgstr ""

#: app/routes/inventory.py:1598
#, python-format
msgid "Error cancelling reservation: %(error)s"
msgstr ""

#: app/routes/inventory.py:1642
#, python-format
msgid "Supplier with code '%(code)s' already exists"
msgstr ""

#: app/routes/inventory.py:1666
msgid "Supplier created successfully."
msgstr ""

#: app/routes/inventory.py:1671
#, python-format
msgid "Error creating supplier: %(error)s"
msgstr ""

#: app/routes/inventory.py:1715
msgid "Supplier code already exists. Please use a different code."
msgstr ""

#: app/routes/inventory.py:1736
msgid "Supplier updated successfully."
msgstr ""

#: app/routes/inventory.py:1741
#, python-format
msgid "Error updating supplier: %(error)s"
msgstr ""

#: app/routes/inventory.py:1757
msgid "Cannot delete supplier with associated stock items. Remove items first."
msgstr ""

#: app/routes/inventory.py:1766
msgid "Supplier deleted successfully."
msgstr ""

#: app/routes/inventory.py:1769
#, python-format
msgid "Error deleting supplier: %(error)s"
msgstr ""

#: app/routes/inventory.py:1817
msgid "Supplier is required."
msgstr ""

#: app/routes/inventory.py:1822
msgid "Supplier not found."
msgstr ""

#: app/routes/inventory.py:1827
msgid "Order date is required."
msgstr ""

#: app/routes/inventory.py:1908
msgid "Could not create purchase order due to a database error."
msgstr ""

#: app/routes/inventory.py:1916
msgid "Purchase order created successfully."
msgstr ""

#: app/routes/inventory.py:1921
#, python-format
msgid "Error creating purchase order: %(error)s"
msgstr ""

#: app/routes/inventory.py:1966
msgid "Cannot edit a purchase order that has been received."
msgstr ""

#: app/routes/inventory.py:2038
msgid "Could not update purchase order due to a database error."
msgstr ""

#: app/routes/inventory.py:2042
msgid "Purchase order updated successfully."
msgstr ""

#: app/routes/inventory.py:2047
#, python-format
msgid "Error updating purchase order: %(error)s"
msgstr ""

#: app/routes/inventory.py:2079
msgid "Could not update purchase order status due to a database error."
msgstr ""

#: app/routes/inventory.py:2083
msgid "Purchase order marked as sent."
msgstr ""

#: app/routes/inventory.py:2086
#, python-format
msgid "Error sending purchase order: %(error)s"
msgstr ""

#: app/routes/inventory.py:2103
msgid "Could not cancel purchase order due to a database error."
msgstr ""

#: app/routes/inventory.py:2107
msgid "Purchase order cancelled successfully."
msgstr ""

#: app/routes/inventory.py:2110
#, python-format
msgid "Error cancelling purchase order: %(error)s"
msgstr ""

#: app/routes/inventory.py:2125
msgid "Cannot delete a purchase order that has been received. Cancel it instead."
msgstr ""

#: app/routes/inventory.py:2131
msgid "Could not delete purchase order due to a database error."
msgstr ""

#: app/routes/inventory.py:2135
msgid "Purchase order deleted successfully."
msgstr ""

#: app/routes/inventory.py:2139
#, python-format
msgid "Error deleting purchase order: %(error)s"
msgstr ""

#: app/routes/inventory.py:2175
msgid "Could not receive purchase order due to a database error."
msgstr ""

#: app/routes/inventory.py:2179
msgid "Purchase order marked as received and stock updated."
msgstr ""

#: app/routes/inventory.py:2182
#, python-format
msgid "Error receiving purchase order: %(error)s"
msgstr ""

#: app/routes/invoice_approvals.py:31
msgid "An approval request is already pending for this invoice."
msgstr ""

#: app/routes/invoice_approvals.py:44
#: app/templates/invoice_approvals/request.html:49
msgid "Please select at least one approver."
msgstr ""

#: app/routes/invoice_approvals.py:52
msgid "Approval request created successfully."
msgstr ""

#: app/routes/invoice_approvals.py:83
msgid "Invoice approved successfully."
msgstr ""

#: app/routes/invoice_approvals.py:100
msgid "Please provide a reason for rejection."
msgstr ""

#: app/routes/invoice_approvals.py:107
msgid "Invoice approval rejected."
msgstr ""

#: app/routes/invoices.py:112
msgid "Project, client name, and due date are required"
msgstr ""

#: app/routes/invoices.py:118 app/routes/tasks.py:238 app/routes/tasks.py:461
msgid "Invalid due date format"
msgstr ""

#: app/routes/invoices.py:124 app/routes/offers.py:108 app/routes/offers.py:240
#: app/routes/quotes.py:225 app/routes/quotes.py:544
#: app/routes/recurring_invoices.py:88
msgid "Invalid tax rate format"
msgstr ""

#: app/routes/invoices.py:130
msgid "Selected project not found"
msgstr ""

#: app/routes/invoices.py:187
msgid "Could not create invoice due to a database error. Please check server logs."
msgstr ""

#: app/routes/invoices.py:259
msgid "You do not have permission to view this invoice"
msgstr ""

#: app/routes/invoices.py:305
msgid "Company Tax ID (VAT) is missing in Admin → Settings → Company Branding."
msgstr ""

#: app/routes/invoices.py:309
msgid "Sender Endpoint ID is missing in Admin → Settings → Peppol e-Invoicing."
msgstr ""

#: app/routes/invoices.py:313
msgid "Sender Scheme ID is missing in Admin → Settings → Peppol e-Invoicing."
msgstr ""

#: app/routes/invoices.py:319
msgid "Client Peppol Endpoint ID is missing. Add peppol_endpoint_id to the client's custom fields."
msgstr ""

#: app/routes/invoices.py:323
msgid "Client Peppol Scheme ID is missing. Add peppol_scheme_id to the client's custom fields."
msgstr ""

#: app/routes/invoices.py:327
msgid "Invoice has no linked client; buyer PEPPOL identifiers cannot be checked."
msgstr ""

#: app/routes/invoices.py:334 app/routes/invoices.py:341
msgid "Could not verify PEPPOL compliance; check configuration."
msgstr ""

#: app/routes/invoices.py:391 app/routes/invoices.py:894
msgid "You do not have permission to edit this invoice"
msgstr ""

#: app/routes/invoices.py:553 app/routes/quotes.py:902
#: app/routes/quotes.py:1008
#, python-format
msgid "Warning: Could not reserve stock for item %(item)s: %(error)s"
msgstr ""

#: app/routes/invoices.py:561
msgid "Could not update invoice due to a database error. Please check server logs."
msgstr ""

#: app/routes/invoices.py:568
msgid "Invoice updated successfully"
msgstr ""

#: app/routes/invoices.py:715
#, python-format
msgid "Warning: Could not reduce stock for item %(item)s: %(error)s"
msgstr ""

#: app/routes/invoices.py:745
msgid "You do not have permission to delete this invoice"
msgstr ""

#: app/routes/invoices.py:749
msgid "Only draft invoices can be deleted."
msgstr ""

#: app/routes/invoices.py:755
msgid "Could not delete invoice due to a database error. Please check server logs."
msgstr ""

#: app/routes/invoices.py:769
msgid "No invoices selected for deletion"
msgstr ""

#: app/routes/invoices.py:806
msgid "Could not delete invoices due to a database error. Please check server logs."
msgstr ""

#: app/routes/invoices.py:828
msgid "No invoices selected"
msgstr ""

#: app/routes/invoices.py:872
msgid "Could not update invoices due to a database error"
msgstr ""

#: app/routes/invoices.py:905
msgid "No time entries, costs, expenses, or extra goods selected"
msgstr ""

#: app/routes/invoices.py:1009
msgid "Could not generate items due to a database error. Please check server logs."
msgstr ""

#: app/routes/invoices.py:1021
msgid "Invoice items generated successfully from time entries and costs"
msgstr ""

#: app/routes/invoices.py:1024
#, python-format
msgid "Applied %(hours)s prepaid hours for %(client)s before billing overages."
msgstr ""

#: app/routes/invoices.py:1064 app/routes/invoices.py:1115
#: app/routes/invoices.py:1167
msgid "You do not have permission to export this invoice"
msgstr ""

#: app/routes/invoices.py:1130
#, python-format
msgid "Cannot generate UBL: %(msg)s"
msgstr ""

#: app/routes/invoices.py:1134
#, python-format
msgid "UBL export failed: %(msg)s"
msgstr ""

#: app/routes/invoices.py:1216
#, python-format
msgid "Factur-X embedding is enabled but failed: %(err)s. Export aborted so the PDF does not ship without embedded XML."
msgstr ""

#: app/routes/invoices.py:1228 app/routes/invoices.py:1290
#, python-format
msgid "PDF/A-3 normalization failed: %(err)s. Export aborted."
msgstr ""

#: app/routes/invoices.py:1241
#, python-format
msgid "veraPDF validation reported issues: %(summary)s"
msgstr ""

#: app/routes/invoices.py:1243
#, python-format
msgid "veraPDF: %(summary)s"
msgstr ""

#: app/routes/invoices.py:1285
#, python-format
msgid "Factur-X embedding is enabled but failed: %(err)s. Export aborted."
msgstr ""

#: app/routes/invoices.py:1307
#, python-format
msgid "PDF generation failed: %(err)s. Fallback also failed: %(fb)s"
msgstr ""

#: app/routes/invoices.py:1321
msgid "You do not have permission to duplicate this invoice"
msgstr ""

#: app/routes/invoices.py:1348
msgid "Could not duplicate invoice due to a database error. Please check server logs."
msgstr ""

#: app/routes/invoices.py:1379
msgid "Could not finalize duplicated invoice due to a database error. Please check server logs."
msgstr ""

#: app/routes/invoices.py:1594
msgid "You do not have permission to upload images to this invoice"
msgstr ""

#: app/routes/invoices.py:1621 app/routes/quotes.py:2000
msgid "File type not allowed. Only images are allowed"
msgstr ""

#: app/routes/invoices.py:1635 app/routes/quotes.py:2014
msgid "File size exceeds maximum allowed size (5 MB)"
msgstr ""

#: app/routes/invoices.py:1683 app/routes/quotes.py:2062
msgid "Could not upload image due to a database error. Please check server logs."
msgstr ""

#: app/routes/invoices.py:1707 app/routes/quotes.py:2086
#: app/templates/main/dashboard.html:1606
#: app/templates/timer/edit_timer.html:871
#: app/templates/timer/manual_entry.html:1045
msgid "Image uploaded successfully"
msgstr ""

#: app/routes/invoices.py:1759
msgid "You do not have permission to delete images from this invoice"
msgstr ""

#: app/routes/invoices.py:1776 app/routes/quotes.py:2157
msgid "Could not delete image due to a database error. Please check server logs."
msgstr ""

#: app/routes/invoices.py:1794 app/routes/quotes.py:2175
msgid "Image deleted successfully"
msgstr ""

#: app/routes/invoices_refactored.py:220
msgid "Invoice marked as sent"
msgstr ""

#: app/routes/invoices_refactored.py:259
msgid "Invoice marked as paid"
msgstr ""

#: app/routes/issues.py:166
msgid "You do not have permission to create issues."
msgstr ""

#: app/routes/issues.py:193
msgid "Client is required."
msgstr ""

#: app/routes/issues.py:221
msgid "Issue created successfully."
msgstr ""

#: app/routes/issues.py:270
msgid "You do not have permission to view this issue."
msgstr ""

#: app/routes/issues.py:325
msgid "You do not have permission to edit this issue."
msgstr ""

#: app/routes/issues.py:345
msgid "Project must belong to the same client."
msgstr ""

#: app/routes/issues.py:367
msgid "Could not update issue due to a database error."
msgstr ""

#: app/routes/issues.py:370
msgid "Issue updated successfully."
msgstr ""

#: app/routes/issues.py:398
msgid "Please select a task."
msgstr ""

#: app/routes/issues.py:403
msgid "Issue linked to task successfully."
msgstr ""

#: app/routes/issues.py:420
msgid "Please select a project."
msgstr ""

#: app/routes/issues.py:429
msgid "Task created from issue successfully."
msgstr ""

#: app/routes/issues.py:445
msgid "Status is required."
msgstr ""

#: app/routes/issues.py:464
msgid "Issue status updated successfully."
msgstr ""

#: app/routes/issues.py:481
msgid "Issue assigned successfully."
msgstr ""

#: app/routes/issues.py:483
msgid "Could not assign issue."
msgstr ""

#: app/routes/issues.py:497
msgid "Priority is required."
msgstr ""

#: app/routes/issues.py:502
msgid "Issue priority updated successfully."
msgstr ""

#: app/routes/issues.py:515
msgid "Only administrators can delete issues."
msgstr ""

#: app/routes/issues.py:523
msgid "Could not delete issue due to a database error."
msgstr ""

#: app/routes/issues.py:526
msgid "Issue deleted successfully."
msgstr ""

#: app/routes/kanban.py:136
msgid "Key and label are required"
msgstr ""

#: app/routes/kanban.py:189
msgid "Could not create column due to a database error. Please check server logs."
msgstr ""

#: app/routes/kanban.py:261
msgid "Could not update column due to a database error. Please check server logs."
msgstr ""

#: app/routes/kanban.py:299
msgid "System columns cannot be deleted"
msgstr ""

#: app/routes/kanban.py:335
msgid "Could not delete column due to a database error. Please check server logs."
msgstr ""

#: app/routes/kanban.py:385
msgid "Could not toggle column due to a database error. Please check server logs."
msgstr ""

#: app/routes/kiosk.py:35 app/routes/kiosk.py:95
msgid "Kiosk mode is not enabled. Please contact an administrator."
msgstr ""

#: app/routes/kiosk.py:140
msgid "No password is set for this account. Please set a password in your profile first."
msgstr ""

#: app/routes/kiosk.py:179
msgid "You have been logged out"
msgstr ""

#: app/routes/kiosk.py:326
msgid "Stock adjustment recorded successfully"
msgstr ""

#: app/routes/kiosk.py:437
msgid "Stock transfer completed successfully"
msgstr ""

#: app/routes/kiosk.py:503
msgid "Timer started successfully"
msgstr ""

#: app/routes/kiosk.py:528 app/routes/timer_refactored.py:164
msgid "Timer stopped successfully"
msgstr ""

#: app/routes/leads.py:112
msgid "Lead created successfully"
msgstr ""

#: app/routes/leads.py:116
#, python-format
msgid "Error creating lead: %(error)s"
msgstr ""

#: app/routes/leads.py:166
msgid "Lead updated successfully"
msgstr ""

#: app/routes/leads.py:170
#, python-format
msgid "Error updating lead: %(error)s"
msgstr ""

#: app/routes/leads.py:182 app/routes/leads.py:237
msgid "Lead has already been converted"
msgstr ""

#: app/routes/leads.py:221
msgid "Lead converted to client successfully"
msgstr ""

#: app/routes/leads.py:225 app/routes/leads.py:276
#, python-format
msgid "Error converting lead: %(error)s"
msgstr ""

#: app/routes/leads.py:272
msgid "Lead converted to deal successfully"
msgstr ""

#: app/routes/leads.py:299
msgid "Lead marked as lost"
msgstr ""

#: app/routes/leads.py:302
#, python-format
msgid "Error marking lead as lost: %(error)s"
msgstr ""

#: app/routes/link_templates.py:46 app/routes/link_templates.py:102
msgid "URL template is required"
msgstr ""

#: app/routes/link_templates.py:50 app/routes/link_templates.py:106
#, python-brace-format
msgid "URL template must contain {value} or %value% placeholder"
msgstr ""

#: app/routes/link_templates.py:71
msgid "Could not create link template due to a database error."
msgstr ""

#: app/routes/link_templates.py:74
msgid "Link template created successfully"
msgstr ""

#: app/routes/link_templates.py:124
msgid "Could not update link template due to a database error."
msgstr ""

#: app/routes/link_templates.py:127
msgid "Link template updated successfully"
msgstr ""

#: app/routes/link_templates.py:142
msgid "Could not delete link template due to a database error."
msgstr ""

#: app/routes/link_templates.py:144
msgid "Link template deleted successfully"
msgstr ""

#: app/routes/main.py:236
msgid "You have been using TimeTracker for a week or more. If it fits your workflow, consider supporting continued development."
msgstr ""

#: app/routes/main.py:244
msgid "You have tracked a solid amount of time today. If TimeTracker makes your day easier, you can support the project in a click."
msgstr ""

#: app/routes/mileage.py:303 app/routes/per_diem.py:257
#: app/routes/reports.py:572 app/routes/timer.py:2956
#, python-format
msgid "PDF export failed: %(error)s"
msgstr ""

#: app/routes/mileage.py:407
msgid "Mileage entry created successfully"
msgstr ""

#: app/routes/mileage.py:416 app/routes/mileage.py:421
msgid "Error creating mileage entry"
msgstr ""

#: app/routes/mileage.py:434
msgid "You do not have permission to view this mileage entry"
msgstr ""

#: app/routes/mileage.py:453
msgid "You do not have permission to edit this mileage entry"
msgstr ""

#: app/routes/mileage.py:458
msgid "Cannot edit approved or reimbursed mileage entries"
msgstr ""

#: app/routes/mileage.py:503
msgid "Mileage entry updated successfully"
msgstr ""

#: app/routes/mileage.py:508 app/routes/mileage.py:513
msgid "Error updating mileage entry"
msgstr ""

#: app/routes/mileage.py:526
msgid "You do not have permission to delete this mileage entry"
msgstr ""

#: app/routes/mileage.py:533
msgid "Mileage entry deleted successfully"
msgstr ""

#: app/routes/mileage.py:537 app/routes/mileage.py:541
msgid "Error deleting mileage entry"
msgstr ""

#: app/routes/mileage.py:554
msgid "No mileage entries selected for deletion"
msgstr ""

#: app/routes/mileage.py:585
msgid "Could not delete mileage entries due to a database error. Please check server logs."
msgstr ""

#: app/routes/mileage.py:594
#, python-format
msgid "Successfully deleted %(count)d mileage entr%(plural)s"
msgstr ""

#: app/routes/mileage.py:608
#, python-format
msgid "Skipped %(count)d mileage entr%(plural)s: %(errors)s"
msgstr ""

#: app/routes/mileage.py:625
msgid "No mileage entries selected"
msgstr ""

#: app/routes/mileage.py:658
msgid "Could not update mileage entries due to a database error"
msgstr ""

#: app/routes/mileage.py:662
#, python-format
msgid "Successfully updated %(count)d mileage entr%(plural)s to %(status)s"
msgstr ""

#: app/routes/mileage.py:673
#, python-format
msgid "Skipped %(count)d mileage entr%(plural)s (no permission)"
msgstr ""

#: app/routes/mileage.py:690
msgid "Only administrators can approve mileage entries"
msgstr ""

#: app/routes/mileage.py:696
msgid "Only pending mileage entries can be approved"
msgstr ""

#: app/routes/mileage.py:704
msgid "Mileage entry approved successfully"
msgstr ""

#: app/routes/mileage.py:708 app/routes/mileage.py:712
msgid "Error approving mileage entry"
msgstr ""

#: app/routes/mileage.py:723
msgid "Only administrators can reject mileage entries"
msgstr ""

#: app/routes/mileage.py:729
msgid "Only pending mileage entries can be rejected"
msgstr ""

#: app/routes/mileage.py:741
msgid "Mileage entry rejected"
msgstr ""

#: app/routes/mileage.py:745 app/routes/mileage.py:749
msgid "Error rejecting mileage entry"
msgstr ""

#: app/routes/mileage.py:760
msgid "Only administrators can mark mileage entries as reimbursed"
msgstr ""

#: app/routes/mileage.py:766
msgid "Only approved mileage entries can be marked as reimbursed"
msgstr ""

#: app/routes/mileage.py:773
msgid "Mileage entry marked as reimbursed"
msgstr ""

#: app/routes/mileage.py:777 app/routes/mileage.py:781
msgid "Error marking mileage entry as reimbursed"
msgstr ""

#: app/routes/offers.py:69 app/routes/quotes.py:156
msgid "Quote title and client are required"
msgstr ""

#: app/routes/offers.py:75 app/routes/quotes.py:168
msgid "Selected client not found"
msgstr ""

#: app/routes/offers.py:84 app/routes/offers.py:216 app/routes/quotes.py:183
msgid "Invalid total amount format"
msgstr ""

#: app/routes/offers.py:100 app/routes/offers.py:232 app/routes/quotes.py:211
msgid "Invalid estimated hours format"
msgstr ""

#: app/routes/offers.py:117 app/routes/offers.py:249 app/routes/quotes.py:263
#: app/routes/quotes.py:572
msgid "Invalid date format for valid until"
msgstr ""

#: app/routes/offers.py:163 app/routes/quotes.py:450
msgid "Could not create quote due to a database error. Please check server logs."
msgstr ""

#: app/routes/offers.py:172 app/routes/quotes.py:465
msgid "Quote created successfully"
msgstr ""

#: app/routes/offers.py:195 app/routes/quotes.py:519
msgid "Only draft quotes can be edited"
msgstr ""

#: app/routes/offers.py:265 app/routes/quotes.py:833
msgid "Could not update quote due to a database error. Please check server logs."
msgstr ""

#: app/routes/offers.py:271 app/routes/quotes.py:845
msgid "Quote updated successfully"
msgstr ""

#: app/routes/offers.py:285 app/routes/quotes.py:868
msgid "Only draft quotes can be sent"
msgstr ""

#: app/routes/offers.py:291 app/routes/quotes.py:908
msgid "Could not send quote due to a database error. Please check server logs."
msgstr ""

#: app/routes/offers.py:297 app/routes/quotes.py:928
msgid "Quote sent successfully"
msgstr ""

#: app/routes/offers.py:309 app/routes/quotes.py:940
msgid "This quote cannot be accepted"
msgstr ""

#: app/routes/offers.py:340 app/routes/quotes.py:971
#, python-format
msgid "Could not accept quote: %(error)s"
msgstr ""

#: app/routes/offers.py:345 app/routes/quotes.py:1014
msgid "Could not accept quote due to a database error. Please check server logs."
msgstr ""

#: app/routes/offers.py:357 app/routes/quotes.py:1040
msgid "Quote accepted and project created successfully"
msgstr ""

#: app/routes/offers.py:371 app/routes/quotes.py:1054
msgid "This quote cannot be rejected"
msgstr ""

#: app/routes/offers.py:377 app/routes/quotes.py:1060
#, python-format
msgid "Could not reject quote: %(error)s"
msgstr ""

#: app/routes/offers.py:381 app/routes/quotes.py:1064 app/routes/quotes.py:1399
msgid "Could not reject quote due to a database error. Please check server logs."
msgstr ""

#: app/routes/offers.py:387 app/routes/quotes.py:1070
msgid "Quote rejected"
msgstr ""

#: app/routes/offers.py:400 app/routes/quotes.py:1083
msgid "Only draft or rejected quotes can be deleted"
msgstr ""

#: app/routes/offers.py:407 app/routes/quotes.py:1090
msgid "Could not delete quote due to a database error. Please check server logs."
msgstr ""

#: app/routes/offers.py:413 app/routes/quotes.py:1096
msgid "Quote deleted successfully"
msgstr ""

#: app/routes/payment_gateways.py:61
msgid "Payment gateway created successfully."
msgstr ""

#: app/routes/payment_gateways.py:81
msgid "No payment gateway configured. Please contact an administrator."
msgstr ""

#: app/routes/payment_gateways.py:97
msgid "Stripe API key not configured."
msgstr ""

#: app/routes/payment_gateways.py:225
msgid "Payment processed successfully."
msgstr ""

#: app/routes/payments.py:52
msgid "Invalid from date format"
msgstr ""

#: app/routes/payments.py:59
msgid "Invalid to date format"
msgstr ""

#: app/routes/payments.py:132
msgid "You do not have permission to view this payment"
msgstr ""

#: app/routes/payments.py:158
msgid "Invoice, amount, and payment date are required"
msgstr ""

#: app/routes/payments.py:165
msgid "Selected invoice not found"
msgstr ""

#: app/routes/payments.py:171
msgid "You do not have permission to add payments to this invoice"
msgstr ""

#: app/routes/payments.py:178 app/routes/payments.py:348
msgid "Payment amount must be greater than zero"
msgstr ""

#: app/routes/payments.py:182 app/routes/payments.py:351
msgid "Invalid payment amount"
msgstr ""

#: app/routes/payments.py:190 app/routes/payments.py:358
msgid "Invalid payment date format"
msgstr ""

#: app/routes/payments.py:200 app/routes/payments.py:367
msgid "Gateway fee cannot be negative"
msgstr ""

#: app/routes/payments.py:204 app/routes/payments.py:370
msgid "Invalid gateway fee amount"
msgstr ""

#: app/routes/payments.py:278
msgid "Could not create payment due to a database error. Please check server logs."
msgstr ""

#: app/routes/payments.py:325
msgid "You do not have permission to edit this payment"
msgstr ""

#: app/routes/payments.py:407
msgid "Could not update payment due to a database error. Please check server logs."
msgstr ""

#: app/routes/payments.py:417
msgid "Payment updated successfully"
msgstr ""

#: app/routes/payments.py:433
msgid "You do not have permission to delete this payment"
msgstr ""

#: app/routes/payments.py:453
msgid "Could not delete payment due to a database error. Please check server logs."
msgstr ""

#: app/routes/payments.py:459
msgid "Payment deleted successfully"
msgstr ""

#: app/routes/payments.py:471
msgid "No payments selected for deletion"
msgstr ""

#: app/routes/payments.py:516
msgid "Could not delete payments due to a database error. Please check server logs."
msgstr ""

#: app/routes/payments.py:538
msgid "No payments selected"
msgstr ""

#: app/routes/payments.py:589
msgid "Could not update payments due to a database error"
msgstr ""

#: app/routes/per_diem.py:316
msgid "Start date must be before end date"
msgstr ""

#: app/routes/per_diem.py:352
msgid "No per diem rate found for this location. Please configure rates first."
msgstr ""

#: app/routes/per_diem.py:408
msgid "Per diem claim created successfully"
msgstr ""

#: app/routes/per_diem.py:417 app/routes/per_diem.py:422
msgid "Error creating per diem claim"
msgstr ""

#: app/routes/per_diem.py:435
msgid "You do not have permission to view this per diem claim"
msgstr ""

#: app/routes/per_diem.py:454
msgid "You do not have permission to edit this per diem claim"
msgstr ""

#: app/routes/per_diem.py:459
msgid "Cannot edit approved or reimbursed per diem claims"
msgstr ""

#: app/routes/per_diem.py:501
msgid "Per diem claim updated successfully"
msgstr ""

#: app/routes/per_diem.py:506 app/routes/per_diem.py:511
msgid "Error updating per diem claim"
msgstr ""

#: app/routes/per_diem.py:524
msgid "You do not have permission to delete this per diem claim"
msgstr ""

#: app/routes/per_diem.py:531
msgid "Per diem claim deleted successfully"
msgstr ""

#: app/routes/per_diem.py:535 app/routes/per_diem.py:539
msgid "Error deleting per diem claim"
msgstr ""

#: app/routes/per_diem.py:552
msgid "No per diem claims selected for deletion"
msgstr ""

#: app/routes/per_diem.py:583
msgid "Could not delete per diem claims due to a database error. Please check server logs."
msgstr ""

#: app/routes/per_diem.py:591
#, python-format
msgid "Successfully deleted %(count)d per diem claim(s)"
msgstr ""

#: app/routes/per_diem.py:595
#, python-format
msgid "Skipped %(count)d per diem claim(s): %(errors)s"
msgstr ""

#: app/routes/per_diem.py:611
msgid "No per diem claims selected"
msgstr ""

#: app/routes/per_diem.py:644
msgid "Could not update per diem claims due to a database error"
msgstr ""

#: app/routes/per_diem.py:648
#, python-format
msgid "Successfully updated %(count)d per diem claim(s) to %(status)s"
msgstr ""

#: app/routes/per_diem.py:653
#, python-format
msgid "Skipped %(count)d per diem claim(s) (no permission)"
msgstr ""

#: app/routes/per_diem.py:664
msgid "Only administrators can approve per diem claims"
msgstr ""

#: app/routes/per_diem.py:670
msgid "Only pending per diem claims can be approved"
msgstr ""

#: app/routes/per_diem.py:678
msgid "Per diem claim approved successfully"
msgstr ""

#: app/routes/per_diem.py:682 app/routes/per_diem.py:686
msgid "Error approving per diem claim"
msgstr ""

#: app/routes/per_diem.py:697
msgid "Only administrators can reject per diem claims"
msgstr ""

#: app/routes/per_diem.py:703
msgid "Only pending per diem claims can be rejected"
msgstr ""

#: app/routes/per_diem.py:715
msgid "Per diem claim rejected"
msgstr ""

#: app/routes/per_diem.py:719 app/routes/per_diem.py:723
msgid "Error rejecting per diem claim"
msgstr ""

#: app/routes/per_diem.py:789
msgid "Per diem rate created successfully"
msgstr ""

#: app/routes/per_diem.py:793 app/routes/per_diem.py:798
msgid "Error creating per diem rate"
msgstr ""

#: app/routes/per_diem.py:847
msgid "Per diem rate updated successfully"
msgstr ""

#: app/routes/per_diem.py:852 app/routes/per_diem.py:857
msgid "Error updating per diem rate"
msgstr ""

#: app/routes/per_diem.py:877
#, python-format
msgid "Cannot delete rate: It is being used by %(count)d per diem claim(s). Deactivate it instead."
msgstr ""

#: app/routes/per_diem.py:888
msgid "Per diem rate deleted successfully"
msgstr ""

#: app/routes/per_diem.py:892 app/routes/per_diem.py:896
msgid "Error deleting per diem rate"
msgstr ""

#: app/routes/permissions.py:66 app/routes/permissions.py:137
#: app/routes/permissions.py:226 app/routes/permissions.py:275
#: app/routes/permissions.py:302 app/utils/permissions.py:42
#: app/utils/permissions.py:74
msgid "You do not have permission to access this page"
msgstr ""

#: app/routes/permissions.py:76 app/routes/permissions.py:149
msgid "Role name is required"
msgstr ""

#: app/routes/permissions.py:86 app/routes/permissions.py:170
msgid "A role with this name already exists"
msgstr ""

#: app/routes/permissions.py:109
msgid "Could not create role due to a database error"
msgstr ""

#: app/routes/permissions.py:117
msgid "Role created successfully"
msgstr ""

#: app/routes/permissions.py:159 app/templates/admin/roles/form.html:39
msgid "System role names cannot be changed"
msgstr ""

#: app/routes/permissions.py:197
msgid "Could not update role due to a database error"
msgstr ""

#: app/routes/permissions.py:205
msgid "Role updated successfully"
msgstr ""

#: app/routes/permissions.py:242
msgid "You do not have permission to perform this action"
msgstr ""

#: app/routes/permissions.py:249
msgid "System roles cannot be deleted"
msgstr ""

#: app/routes/permissions.py:254
msgid "Cannot delete role that is assigned to users. Please reassign users first."
msgstr ""

#: app/routes/permissions.py:261
msgid "Could not delete role due to a database error"
msgstr ""

#: app/routes/permissions.py:264
#, python-format
msgid "Role \"%(name)s\" deleted successfully"
msgstr ""

#: app/routes/permissions.py:320
msgid "Only Super Admins can assign the super_admin role"
msgstr ""

#: app/routes/permissions.py:328
msgid "Only Super Admins can remove the admin role from themselves"
msgstr ""

#: app/routes/permissions.py:334
msgid "Only Super Admins can remove the admin role from other users"
msgstr ""

#: app/routes/permissions.py:355
msgid "Could not update user roles due to a database error"
msgstr ""

#: app/routes/permissions.py:358
msgid "User roles updated successfully"
msgstr ""

#: app/routes/project_templates.py:163
msgid "Template created successfully."
msgstr ""

#: app/routes/project_templates.py:182 app/routes/project_templates.py:202
#: app/routes/project_templates.py:307
msgid "Template not found."
msgstr ""

#: app/routes/project_templates.py:187
msgid "You do not have permission to view this template."
msgstr ""

#: app/routes/project_templates.py:206
msgid "You do not have permission to edit this template."
msgstr ""

#: app/routes/project_templates.py:270
msgid "Template updated successfully."
msgstr ""

#: app/routes/project_templates.py:289
msgid "Template deleted successfully."
msgstr ""

#: app/routes/project_templates.py:317
msgid "Please select a client."
msgstr ""

#: app/routes/project_templates.py:347
msgid "Project created from template successfully."
msgstr ""

#: app/routes/projects.py:339 app/routes/projects.py:940
msgid "Project name and client are required"
msgstr ""

#: app/routes/projects.py:363 app/routes/projects.py:970
msgid "Invalid budget amount"
msgstr ""

#: app/routes/projects.py:376 app/routes/projects.py:985
msgid "Invalid budget threshold percent (0-100)"
msgstr ""

#: app/routes/projects.py:449
msgid "Could not save project due to a database error"
msgstr ""

#: app/routes/projects.py:569 app/routes/projects_refactored_example.py:113
msgid "Project not found"
msgstr ""

#: app/routes/projects.py:1068
msgid "Could not update project due to a database error"
msgstr ""

#: app/routes/projects.py:1113
msgid "You do not have permission to archive projects"
msgstr ""

#: app/routes/projects.py:1121
msgid "Project is already archived"
msgstr ""

#: app/routes/projects.py:1155
msgid "You do not have permission to unarchive projects"
msgstr ""

#: app/routes/projects.py:1159 app/routes/projects.py:1219
msgid "Project is already active"
msgstr ""

#: app/routes/projects.py:1192
msgid "You do not have permission to deactivate projects"
msgstr ""

#: app/routes/projects.py:1196
msgid "Project is already inactive"
msgstr ""

#: app/routes/projects.py:1215
msgid "You do not have permission to activate projects"
msgstr ""

#: app/routes/projects.py:1239
msgid "Cannot delete project with existing time entries"
msgstr ""

#: app/routes/projects.py:1259
msgid "Could not delete project due to a database error. Please check server logs."
msgstr ""

#: app/routes/projects.py:1272
msgid "You do not have permission to delete projects"
msgstr ""

#: app/routes/projects.py:1278
msgid "No projects selected for deletion"
msgstr ""

#: app/routes/projects.py:1317
msgid "Could not delete projects due to a database error. Please check server logs."
msgstr ""

#: app/routes/projects.py:1331
msgid "No projects were deleted"
msgstr ""

#: app/routes/projects.py:1342
msgid "You do not have permission to change project status"
msgstr ""

#: app/routes/projects.py:1350
msgid "No projects selected"
msgstr ""

#: app/routes/projects.py:1413
msgid "Could not update project status due to a database error. Please check server logs."
msgstr ""

#: app/routes/projects.py:1430
msgid "No projects were updated"
msgstr ""

#: app/routes/projects.py:1448 app/routes/projects.py:1449
msgid "Project is already in favorites"
msgstr ""

#: app/routes/projects.py:1471 app/routes/projects.py:1472
msgid "Project added to favorites"
msgstr ""

#: app/routes/projects.py:1476 app/routes/projects.py:1477
msgid "Failed to add project to favorites"
msgstr ""

#: app/routes/projects.py:1493 app/routes/projects.py:1494
msgid "Project is not in favorites"
msgstr ""

#: app/routes/projects.py:1516 app/routes/projects.py:1517
msgid "Project removed from favorites"
msgstr ""

#: app/routes/projects.py:1521 app/routes/projects.py:1522
msgid "Failed to remove project from favorites"
msgstr ""

#: app/routes/projects.py:1602 app/routes/projects.py:1673
msgid "Description, category, amount, and date are required"
msgstr ""

#: app/routes/projects.py:1636
msgid "Could not add cost due to a database error. Please check server logs."
msgstr ""

#: app/routes/projects.py:1639
msgid "Cost added successfully"
msgstr ""

#: app/routes/projects.py:1654 app/routes/projects.py:1721
msgid "Cost not found"
msgstr ""

#: app/routes/projects.py:1659
msgid "You do not have permission to edit this cost"
msgstr ""

#: app/routes/projects.py:1703
msgid "Could not update cost due to a database error. Please check server logs."
msgstr ""

#: app/routes/projects.py:1706
msgid "Cost updated successfully"
msgstr ""

#: app/routes/projects.py:1726
msgid "You do not have permission to delete this cost"
msgstr ""

#: app/routes/projects.py:1731
msgid "Cannot delete cost that has been invoiced"
msgstr ""

#: app/routes/projects.py:1737
msgid "Could not delete cost due to a database error. Please check server logs."
msgstr ""

#: app/routes/projects.py:1830 app/routes/projects.py:1905
msgid "Name and unit price are required"
msgstr ""

#: app/routes/projects.py:1839 app/routes/projects.py:1914
msgid "Invalid quantity format"
msgstr ""

#: app/routes/projects.py:1848 app/routes/projects.py:1923
msgid "Invalid unit price format"
msgstr ""

#: app/routes/projects.py:1867
msgid "Could not add extra good due to a database error. Please check server logs."
msgstr ""

#: app/routes/projects.py:1870
msgid "Extra good added successfully"
msgstr ""

#: app/routes/projects.py:1885 app/routes/projects.py:1956
msgid "Extra good not found"
msgstr ""

#: app/routes/projects.py:1890
msgid "You do not have permission to edit this extra good"
msgstr ""

#: app/routes/projects.py:1938
msgid "Could not update extra good due to a database error. Please check server logs."
msgstr ""

#: app/routes/projects.py:1941
msgid "Extra good updated successfully"
msgstr ""

#: app/routes/projects.py:1961
msgid "You do not have permission to delete this extra good"
msgstr ""

#: app/routes/projects.py:1966
msgid "Cannot delete extra good that has been added to an invoice"
msgstr ""

#: app/routes/projects.py:1972
msgid "Could not delete extra good due to a database error. Please check server logs."
msgstr ""

#: app/routes/projects_refactored_example.py:190
msgid "Project created successfully"
msgstr ""

#: app/routes/quotes.py:248 app/routes/quotes.py:562
msgid "Invalid discount amount format"
msgstr ""

#: app/routes/quotes.py:866
msgid "Quote must be approved before it can be sent"
msgstr ""

#: app/routes/quotes.py:874
#, python-format
msgid "Cannot send quote: %(error)s"
msgstr ""

#: app/routes/quotes.py:1115
msgid "You do not have permission to upload attachments to this quote"
msgstr ""

#: app/routes/quotes.py:1229
msgid "You do not have permission to download this attachment"
msgstr ""

#: app/routes/quotes.py:1298
msgid "You do not have permission to request approval for this quote"
msgstr ""

#: app/routes/quotes.py:1302 app/routes/quotes.py:1340
#: app/routes/quotes.py:1380
msgid "This quote does not require approval"
msgstr ""

#: app/routes/quotes.py:1308
#, python-format
msgid "Cannot request approval: %(error)s"
msgstr ""

#: app/routes/quotes.py:1312
msgid "Could not request approval due to a database error. Please check server logs."
msgstr ""

#: app/routes/quotes.py:1328
msgid "Approval requested successfully"
msgstr ""

#: app/routes/quotes.py:1344 app/routes/quotes.py:1384
msgid "This quote is not pending approval"
msgstr ""

#: app/routes/quotes.py:1352
#, python-format
msgid "Cannot approve quote: %(error)s"
msgstr ""

#: app/routes/quotes.py:1356
msgid "Could not approve quote due to a database error. Please check server logs."
msgstr ""

#: app/routes/quotes.py:1368
msgid "Quote approved successfully"
msgstr ""

#: app/routes/quotes.py:1395
#, python-format
msgid "Cannot reject quote: %(error)s"
msgstr ""

#: app/routes/quotes.py:1411
msgid "Quote approval rejected"
msgstr ""

#: app/routes/quotes.py:1488
msgid "Could not create template due to a database error. Please check server logs."
msgstr ""

#: app/routes/quotes.py:1494
msgid "Template created successfully"
msgstr ""

#: app/routes/quotes.py:1507
msgid "Quote ID is required"
msgstr ""

#: app/routes/quotes.py:1513
msgid "You do not have permission to create a template from this quote"
msgstr ""

#: app/routes/quotes.py:1555
msgid "Could not save template due to a database error. Please check server logs."
msgstr ""

#: app/routes/quotes.py:1561
msgid "Template saved successfully"
msgstr ""

#: app/routes/quotes.py:1578
msgid "You do not have permission to export this quote"
msgstr ""

#: app/routes/quotes.py:1649
#, python-format
msgid "Error generating PDF: %(error)s"
msgstr ""

#: app/routes/quotes.py:1673
msgid "Recipient email address is required"
msgstr ""

#: app/routes/quotes.py:1691
#, python-format
msgid "Quote sent successfully to %(email)s"
msgstr ""

#: app/routes/quotes.py:1708
#, python-format
msgid "Failed to send quote: %(error)s"
msgstr ""

#: app/routes/quotes.py:1714
#, python-format
msgid "Error sending email: %(error)s"
msgstr ""

#: app/routes/quotes.py:1733
msgid "You do not have permission to duplicate this quote"
msgstr ""

#: app/routes/quotes.py:1771
msgid "Could not duplicate quote due to a database error. Please check server logs."
msgstr ""

#: app/routes/quotes.py:1796
msgid "Could not finalize duplicated quote due to a database error. Please check server logs."
msgstr ""

#: app/routes/quotes.py:1799
#, python-format
msgid "Quote %(quote_number)s created as duplicate"
msgstr ""

#: app/routes/quotes.py:1824
msgid "Please select an action and at least one quote"
msgstr ""

#: app/routes/quotes.py:1830
msgid "Invalid quote IDs"
msgstr ""

#: app/routes/quotes.py:1839
msgid "No quotes found or you do not have permission"
msgstr ""

#: app/routes/quotes.py:1905
#, python-format
msgid "Duplicated %(count)d quote(s)"
msgstr ""

#: app/routes/quotes.py:1907
#, python-format
msgid "Failed to duplicate %(count)d quote(s)"
msgstr ""

#: app/routes/quotes.py:1909
msgid "Error duplicating quotes"
msgstr ""

#: app/routes/quotes.py:1924
#, python-format
msgid "Marked %(count)d quote(s) as sent"
msgstr ""

#: app/routes/quotes.py:1926
#, python-format
msgid "Could not mark %(count)d quote(s) as sent"
msgstr ""

#: app/routes/quotes.py:1928
msgid "Error updating quotes"
msgstr ""

#: app/routes/quotes.py:1944
#, python-format
msgid "Deleted %(count)d quote(s)"
msgstr ""

#: app/routes/quotes.py:1946
#, python-format
msgid "Could not delete %(count)d quote(s) (may be in use)"
msgstr ""

#: app/routes/quotes.py:1948
msgid "Error deleting quotes"
msgstr ""

#: app/routes/quotes.py:1951
msgid "Invalid action"
msgstr ""

#: app/routes/quotes.py:1973
msgid "You do not have permission to upload images to this quote"
msgstr ""

#: app/routes/quotes.py:2140
msgid "You do not have permission to delete images from this quote"
msgstr ""

#: app/routes/recurring_invoices.py:68
msgid "Name, project, client, frequency, and next run date are required"
msgstr ""

#: app/routes/recurring_invoices.py:74
msgid "Invalid next run date format"
msgstr ""

#: app/routes/recurring_invoices.py:82
msgid "Invalid end date format"
msgstr ""

#: app/routes/recurring_invoices.py:95
msgid "Selected project or client not found"
msgstr ""

#: app/routes/recurring_invoices.py:137
msgid "Could not create recurring invoice due to a database error. Please check server logs."
msgstr ""

#: app/routes/recurring_invoices.py:173
msgid "You do not have permission to view this recurring invoice"
msgstr ""

#: app/routes/recurring_invoices.py:191
msgid "You do not have permission to edit this recurring invoice"
msgstr ""

#: app/routes/recurring_invoices.py:216
msgid "Could not update recurring invoice due to a database error. Please check server logs."
msgstr ""

#: app/routes/recurring_invoices.py:224
msgid "Recurring invoice updated successfully"
msgstr ""

#: app/routes/recurring_invoices.py:251
msgid "You do not have permission to delete this recurring invoice"
msgstr ""

#: app/routes/recurring_invoices.py:257
msgid "Could not delete recurring invoice due to a database error. Please check server logs."
msgstr ""

#: app/routes/recurring_tasks.py:64
msgid "Recurring task created successfully"
msgstr ""

#: app/routes/reports.py:134 app/routes/reports.py:208
#: app/routes/reports.py:860 app/routes/timer.py:2266
msgid "You do not have permission to view other users' time entries"
msgstr ""

#: app/routes/reports.py:387 app/routes/reports.py:959
#: app/routes/reports.py:1000 app/routes/reports.py:1093
#: app/routes/reports.py:1176 app/routes/reports.py:1270
#: app/routes/reports.py:1445
msgid "You do not have permission to export other users' time entries"
msgstr ""

#: app/routes/reports.py:1014 app/templates/main/dashboard.html:706
#: app/templates/main/search.html:34 app/templates/mileage/gps.html:31
#: app/templates/projects/_kanban_tailwind.html:78
#: app/templates/projects/time_entries_overview.html:68
#: app/templates/projects/time_entries_overview.html:79
#: app/templates/reports/time_entries_report.html:103
#: app/templates/reports/time_entries_report.html:117
#: app/templates/tasks/view.html:14 app/templates/timer/calendar.html:868
#: app/templates/timer/time_entries_export_pdf.html:14
msgid "Start"
msgstr ""

#: app/routes/reports.py:1015 app/templates/main/search.html:35
#: app/templates/projects/time_entries_overview.html:69
#: app/templates/projects/time_entries_overview.html:80
#: app/templates/timer/calendar.html:872
#: app/templates/timer/time_entries_export_pdf.html:15
msgid "End"
msgstr ""

#: app/routes/reports.py:1016 app/templates/reports/user_report.html:78
msgid "Duration (hours)"
msgstr ""

#: app/routes/reports.py:1018 app/templates/approvals/view.html:52
#: app/templates/audit_logs/view.html:95
#: app/templates/calendar/event_detail.html:104
#: app/templates/calendar/event_form.html:129
#: app/templates/clients/view.html:351
#: app/templates/components/offline_indicator.html:78
#: app/templates/kiosk/dashboard.html:331 app/templates/main/dashboard.html:750
#: app/templates/projects/_kanban_tailwind.html:30
#: app/templates/projects/time_entries_overview.html:71
#: app/templates/projects/time_entries_overview.html:82
#: app/templates/reports/time_entries_report.html:57
#: app/templates/reports/time_entries_report.html:107
#: app/templates/reports/time_entries_report.html:121
#: app/templates/reports/unpaid_hours_report.html:121
#: app/templates/reports/user_report.html:77
#: app/templates/timer/_time_entries_list.html:39
#: app/templates/timer/_time_entries_list.html:80
#: app/templates/timer/calendar.html:158 app/templates/timer/calendar.html:811
#: app/templates/timer/calendar.html:866
#: app/templates/timer/manual_entry.html:79
#: app/templates/timer/time_entries_export_pdf.html:17
#: app/templates/timer/timer_page.html:160
#: app/templates/timer/view_timer.html:91
msgid "Task"
msgstr ""

#: app/routes/reports.py:1019 app/templates/admin/pdf_layout.html:1864
#: app/templates/admin/quote_pdf_layout.html:1670
#: app/templates/admin/salesman_email_mappings.html:124
#: app/templates/approvals/view.html:62
#: app/templates/client_portal/invoice_detail.html:123
#: app/templates/clients/view.html:354 app/templates/contacts/form.html:84
#: app/templates/contacts/view.html:70 app/templates/deals/form.html:102
#: app/templates/deals/view.html:112
#: app/templates/inventory/adjustments/form.html:50
#: app/templates/inventory/movements/form.html:108
#: app/templates/inventory/purchase_orders/form.html:55
#: app/templates/inventory/purchase_orders/view.html:75
#: app/templates/inventory/stock_items/form.html:81
#: app/templates/inventory/suppliers/form.html:73
#: app/templates/inventory/suppliers/view.html:99
#: app/templates/inventory/transfers/form.html:54
#: app/templates/inventory/warehouses/form.html:48
#: app/templates/inventory/warehouses/view.html:69
#: app/templates/invoices/create.html:51 app/templates/invoices/edit.html:46
#: app/templates/kiosk/dashboard.html:347 app/templates/leads/form.html:88
#: app/templates/leads/view.html:115 app/templates/main/dashboard.html:760
#: app/templates/main/search.html:37 app/templates/projects/add_cost.html:76
#: app/templates/projects/edit_cost.html:83
#: app/templates/reports/iterative_view.html:47
#: app/templates/reports/iterative_view.html:58
#: app/templates/reports/time_entries_report.html:108
#: app/templates/reports/time_entries_report.html:122
#: app/templates/reports/unpaid_hours_report.html:124
#: app/templates/reports/user_report.html:79 app/templates/tasks/view.html:78
#: app/templates/timer/_time_entries_list.html:41
#: app/templates/timer/_time_entries_list.html:107
#: app/templates/timer/bulk_entry.html:189
#: app/templates/timer/calendar.html:187 app/templates/timer/calendar.html:879
#: app/templates/timer/edit_timer.html:337
#: app/templates/timer/edit_timer.html:448
#: app/templates/timer/manual_entry.html:140
#: app/templates/timer/time_entries_export_pdf.html:19
#: app/templates/timer/timer_page.html:169
#: app/templates/timer/view_timer.html:46
#: app/templates/weekly_goals/create.html:83
#: app/templates/weekly_goals/edit.html:98
#: app/templates/weekly_goals/view.html:163
msgid "Notes"
msgstr ""

#: app/routes/reports.py:1020 app/templates/reports/time_entries_report.html:68
#: app/templates/reports/time_entries_report.html:109
#: app/templates/reports/time_entries_report.html:123
msgid "Billed"
msgstr ""

#: app/routes/reports.py:1021 app/templates/approvals/view.html:44
#: app/templates/audit_logs/list.html:114 app/templates/audit_logs/view.html:92
#: app/templates/calendar/event_detail.html:120
#: app/templates/calendar/event_form.html:142
#: app/templates/client_portal/invoice_detail.html:23
#: app/templates/client_portal/project_comments.html:51
#: app/templates/client_portal/quote_detail.html:23
#: app/templates/client_portal/set_password.html:41
#: app/templates/deals/form.html:30 app/templates/deals/list.html:51
#: app/templates/deals/list.html:65 app/templates/deals/view.html:36
#: app/templates/issues/list.html:57 app/templates/issues/list.html:94
#: app/templates/issues/list.html:111 app/templates/issues/new.html:37
#: app/templates/issues/view.html:126 app/templates/issues/view.html:156
#: app/templates/leads/convert_to_deal.html:29
#: app/templates/main/dashboard.html:742 app/templates/main/help.html:196
#: app/templates/project_templates/create_project.html:21
#: app/templates/projects/_projects_list.html:79
#: app/templates/projects/create.html:32 app/templates/projects/edit.html:30
#: app/templates/projects/list.html:160
#: app/templates/quotes/_quotes_list.html:35
#: app/templates/quotes/_quotes_list.html:52
#: app/templates/quotes/accept.html:22 app/templates/quotes/create.html:32
#: app/templates/quotes/edit.html:36 app/templates/quotes/view.html:84
#: app/templates/recurring_invoices/list.html:25
#: app/templates/recurring_invoices/list.html:41
#: app/templates/reports/iterative_view.html:43
#: app/templates/reports/iterative_view.html:54
#: app/templates/reports/time_entries_report.html:46
#: app/templates/reports/time_entries_report.html:110
#: app/templates/reports/time_entries_report.html:124
#: app/templates/reports/unpaid_hours_report.html:73
#: app/templates/reports/unpaid_hours_report.html:85
#: app/templates/reports/user_report.html:81
#: app/templates/timer/manual_entry.html:71
#: app/templates/timer/time_entries_overview.html:98
#: app/templates/timer/timer_page.html:149
#: app/templates/timer/view_timer.html:81
msgid "Client"
msgstr ""

#: app/routes/reports.py:1024 app/templates/admin/dashboard.html:334
#: app/templates/admin/oidc_debug.html:152
#: app/templates/admin/oidc_user_detail.html:26
#: app/templates/audit_logs/list.html:35 app/templates/audit_logs/list.html:76
#: app/templates/audit_logs/list.html:90
#: app/templates/client_portal/reports.html:222
#: app/templates/client_portal/time_entries.html:64
#: app/templates/client_portal/widgets/time_entries.html:22
#: app/templates/clients/view.html:352 app/templates/deals/view.html:193
#: app/templates/deals/view.html:203 app/templates/expenses/list.html:329
#: app/templates/integrations/health.html:41
#: app/templates/inventory/adjustments/list.html:61
#: app/templates/inventory/adjustments/list.html:82
#: app/templates/inventory/movements/list.html:62
#: app/templates/inventory/movements/list.html:145
#: app/templates/inventory/reports/movement_history.html:78
#: app/templates/inventory/reports/movement_history.html:165
#: app/templates/inventory/stock_items/history.html:69
#: app/templates/inventory/stock_items/history.html:151
#: app/templates/inventory/transfers/list.html:43
#: app/templates/inventory/transfers/list.html:70
#: app/templates/projects/time_entries_overview.html:73
#: app/templates/projects/time_entries_overview.html:90
#: app/templates/reports/iterative_view.html:45
#: app/templates/reports/iterative_view.html:56
#: app/templates/reports/time_entries_report.html:24
#: app/templates/reports/unpaid_hours_report.html:119
#: app/templates/reports/user_report.html:75 app/templates/tasks/view.html:77
#: app/templates/timer/_time_entries_list.html:36
#: app/templates/timer/_time_entries_list.html:63
#: app/templates/timer/edit_timer.html:533
#: app/templates/timer/time_entries_overview.html:67
#: app/templates/timer/view_timer.html:118 app/templates/user/profile.html:23
#: app/templates/workforce/dashboard.html:21
#: app/templates/workforce/dashboard.html:208
msgid "User"
msgstr ""

#: app/routes/reports.py:1038 app/templates/admin/email_support.html:183
#: app/templates/admin/settings.html:413 app/templates/base.html:395
#: app/templates/integrations/health.html:46
#: app/templates/integrations/view.html:32
#: app/templates/integrations/wizard_jira.html:253
#: app/templates/inventory/stock_items/view.html:113
#: app/templates/kanban/columns.html:79
#: app/templates/project_templates/view.html:40
#: app/templates/reports/time_entries_report.html:72
#: app/templates/reports/time_entries_report.html:123
#: app/templates/timer/calendar.html:885
msgid "Yes"
msgstr ""

#: app/routes/reports.py:1038 app/templates/admin/email_support.html:185
#: app/templates/admin/settings.html:413 app/templates/base.html:396
#: app/templates/integrations/health.html:48
#: app/templates/integrations/view.html:43
#: app/templates/integrations/wizard_jira.html:253
#: app/templates/inventory/stock_items/view.html:115
#: app/templates/kanban/columns.html:81
#: app/templates/project_templates/view.html:40
#: app/templates/reports/time_entries_report.html:73
#: app/templates/reports/time_entries_report.html:123
#: app/templates/timer/calendar.html:885
msgid "No"
msgstr ""

#: app/routes/salesman_reports.py:27
msgid "You do not have permission to access this page."
msgstr ""

#: app/routes/saved_filters.py:248
msgid "Could not delete filter due to a database error"
msgstr ""

#: app/routes/scheduled_reports.py:104
msgid "Error loading scheduled reports. Please check the logs."
msgstr ""

#: app/routes/scheduled_reports.py:129 app/routes/scheduled_reports.py:195
msgid "Please fill in all required fields."
msgstr ""

#: app/routes/scheduled_reports.py:133 app/routes/scheduled_reports.py:200
msgid "Please specify a custom field name when enabling report iteration."
msgstr ""

#: app/routes/scheduled_reports.py:151
msgid "Scheduled report created successfully."
msgstr ""

#: app/routes/scheduled_reports.py:168
msgid "Scheduled report deleted successfully."
msgstr ""

#: app/routes/scheduled_reports.py:250 app/routes/scheduled_reports.py:355
msgid "Permission denied"
msgstr ""

#: app/routes/scheduled_reports.py:305
msgid "You do not have permission to fix this schedule."
msgstr ""

#: app/routes/scheduled_reports.py:313
msgid "Scheduled report deleted: saved view no longer exists."
msgstr ""

#: app/routes/scheduled_reports.py:327
msgid "Scheduled report deactivated: invalid configuration."
msgstr ""

#: app/routes/scheduled_reports.py:334
msgid "Scheduled report deactivated: could not parse configuration."
msgstr ""

#: app/routes/scheduled_reports.py:340
msgid "Scheduled report validated and reactivated."
msgstr ""

#: app/routes/scheduled_reports.py:359
msgid "Saved report view not found"
msgstr ""

#: app/routes/settings.py:46
msgid "Your preferences are managed on the main Settings page."
msgstr ""

#: app/routes/setup.py:107
msgid "Could not save settings. Please check server logs."
msgstr ""

#: app/routes/setup.py:125
msgid "Setup complete! Thank you for helping us improve TimeTracker."
msgstr ""

#: app/routes/setup.py:127
msgid "Setup complete! Detailed analytics is disabled; anonymous base telemetry remains active."
msgstr ""

#: app/routes/setup.py:129
msgid "Google Calendar OAuth credentials have been configured."
msgstr ""

#: app/routes/tasks.py:191
msgid "Project and task name are required"
msgstr ""

#: app/routes/tasks.py:200 app/routes/tasks.py:422
#, python-format
msgid "Invalid task name: %(error)s"
msgstr ""

#: app/routes/tasks.py:208
msgid "Selected project does not exist"
msgstr ""

#: app/routes/tasks.py:331
msgid "Task not found"
msgstr ""

#: app/routes/tasks.py:336
msgid "You do not have access to this task"
msgstr ""

#: app/routes/tasks.py:395
msgid "You can only edit tasks you created"
msgstr ""

#: app/routes/tasks.py:415
msgid "Task name is required"
msgstr ""

#: app/routes/tasks.py:434
msgid "Project is required"
msgstr ""

#: app/routes/tasks.py:525
msgid "Could not update status due to a database error. Please check server logs."
msgstr ""

#: app/routes/tasks.py:588
msgid "Could not update task due to a database error. Please check server logs."
msgstr ""

#: app/routes/tasks.py:626
msgid "You do not have permission to update this task"
msgstr ""

#: app/routes/tasks.py:736
msgid "You can only update tasks you created"
msgstr ""

#: app/routes/tasks.py:757
msgid "You can only assign tasks you created"
msgstr ""

#: app/routes/tasks.py:763
msgid "Selected user does not exist"
msgstr ""

#: app/routes/tasks.py:770
msgid "Task unassigned"
msgstr ""

#: app/routes/tasks.py:783
msgid "You can only delete tasks you created"
msgstr ""

#: app/routes/tasks.py:788
msgid "Cannot delete task with existing time entries"
msgstr ""

#: app/routes/tasks.py:809
msgid "Could not delete task due to a database error. Please check server logs."
msgstr ""

#: app/routes/tasks.py:831
msgid "No tasks selected for deletion"
msgstr ""

#: app/routes/tasks.py:893
msgid "Could not delete tasks due to a database error. Please check server logs."
msgstr ""

#: app/routes/tasks.py:914 app/routes/tasks.py:989 app/routes/tasks.py:990
#: app/routes/tasks.py:1068 app/routes/tasks.py:1069 app/routes/tasks.py:1137
#: app/routes/tasks.py:1196
msgid "No tasks selected"
msgstr ""

#: app/routes/tasks.py:962 app/routes/tasks.py:1030 app/routes/tasks.py:1105
msgid "Could not update tasks due to a database error"
msgstr ""

#: app/routes/tasks.py:995
msgid "Due date is required (YYYY-MM-DD)"
msgstr ""

#: app/routes/tasks.py:996
msgid "Due date is required"
msgstr ""

#: app/routes/tasks.py:1005 app/routes/tasks.py:1006
msgid "Invalid date format. Use YYYY-MM-DD"
msgstr ""

#: app/routes/tasks.py:1029 app/routes/tasks.py:1104
msgid "Database error"
msgstr ""

#: app/routes/tasks.py:1040 app/routes/tasks.py:1115
#, python-format
msgid "Updated %(count)s task(s)"
msgstr ""

#: app/routes/tasks.py:1040 app/routes/tasks.py:1115
msgid "No tasks updated"
msgstr ""

#: app/routes/tasks.py:1046
#, python-format
msgid "Successfully updated %(count)s task(s) due date to %(date)s"
msgstr ""

#: app/routes/tasks.py:1050
#, python-format
msgid "Skipped %(count)s task(s) (no permission)"
msgstr ""

#: app/routes/tasks.py:1074 app/routes/tasks.py:1075
msgid "Invalid priority value"
msgstr ""

#: app/routes/tasks.py:1141
msgid "No user selected for assignment"
msgstr ""

#: app/routes/tasks.py:1147
msgid "Invalid user selected"
msgstr ""

#: app/routes/tasks.py:1174
msgid "Could not assign tasks due to a database error"
msgstr ""

#: app/routes/tasks.py:1200
msgid "No project selected"
msgstr ""

#: app/routes/tasks.py:1206 app/routes/timer.py:116 app/routes/timer.py:434
#: app/routes/timer.py:823 app/routes/timer.py:1639
msgid "Invalid project selected"
msgstr ""

#: app/routes/tasks.py:1251
msgid "Could not move tasks due to a database error"
msgstr ""

#: app/routes/tasks.py:1484
msgid "Only administrators can view all overdue tasks"
msgstr ""

#: app/routes/team_chat.py:58 app/routes/team_chat.py:106
#: app/routes/team_chat.py:413 app/routes/team_chat.py:451
msgid "You don't have access to this channel"
msgstr ""

#: app/routes/team_chat.py:113
msgid "Message cannot be empty"
msgstr ""

#: app/routes/team_chat.py:133
msgid "Attachment data was invalid; message sent without attachment."
msgstr ""

#: app/routes/team_chat.py:406
msgid "Invalid message"
msgstr ""

#: app/routes/team_chat.py:417
msgid "No attachment found"
msgstr ""

#: app/routes/team_chat.py:496
msgid "Invalid filename"
msgstr ""

#: app/routes/team_chat.py:507
msgid "Server error: Could not create upload directory"
msgstr ""

#: app/routes/team_chat.py:515
msgid "Server error: Could not save file"
msgstr ""

#: app/routes/team_chat.py:556
msgid "Cannot create direct message with yourself"
msgstr ""

#: app/routes/team_chat.py:559
msgid "User is not active"
msgstr ""

#: app/routes/time_approvals.py:73
msgid "Time entry approved"
msgstr ""

#: app/routes/time_approvals.py:101
msgid "Time entry rejected"
msgstr ""

#: app/routes/time_approvals.py:127
msgid "Approval requested"
msgstr ""

#: app/routes/time_approvals.py:147
msgid "Approval cancelled"
msgstr ""

#: app/routes/time_entry_templates.py:93
msgid "Could not create template due to a database error"
msgstr ""

#: app/routes/time_entry_templates.py:205
msgid "Could not update template due to a database error"
msgstr ""

#: app/routes/time_entry_templates.py:248
msgid "Could not delete template due to a database error"
msgstr ""

#: app/routes/timer.py:105
msgid "Either a project or a client is required"
msgstr ""

#: app/routes/timer.py:127 app/routes/timer.py:440 app/routes/timer.py:2042
msgid "Cannot start timer for an archived project. Please unarchive the project first."
msgstr ""

#: app/routes/timer.py:131 app/routes/timer.py:444 app/routes/timer.py:2045
msgid "Cannot start timer for an inactive project"
msgstr ""

#: app/routes/timer.py:139
msgid "Selected task is invalid for the chosen project"
msgstr ""

#: app/routes/timer.py:153
msgid "Invalid client selected"
msgstr ""

#: app/routes/timer.py:159
msgid "Tasks can only be selected for project-based timers"
msgstr ""

#: app/routes/timer.py:167 app/routes/timer.py:356 app/routes/timer.py:449
msgid "You do not have access to this project"
msgstr ""

#: app/routes/timer.py:171
msgid "You do not have access to this client"
msgstr ""

#: app/routes/timer.py:177 app/routes/timer.py:341 app/routes/timer.py:455
msgid "You already have an active timer. Stop it before starting a new one."
msgstr ""

#: app/routes/timer.py:219 app/routes/timer.py:382 app/routes/timer.py:470
msgid "Could not start timer due to a database error. Please check server logs."
msgstr ""

#: app/routes/timer.py:267 app/routes/timer.py:272 app/routes/timer.py:1048
#: app/routes/timer.py:1055 app/routes/timer.py:2148
#: app/templates/admin/oidc_user_detail.html:30
#: app/templates/client_portal/project_comments.html:55
#: app/templates/invoice_approvals/list.html:56
#: app/templates/invoice_approvals/view.html:43
#: app/templates/invoice_approvals/view.html:50
#: app/templates/invoice_approvals/view.html:73
#: app/templates/reports/scheduled.html:38
msgid "Unknown"
msgstr ""

#: app/routes/timer.py:326
msgid "Timer started"
msgstr ""

#: app/routes/timer.py:346
msgid "Template must have a project to start a timer"
msgstr ""

#: app/routes/timer.py:352
msgid "Cannot start timer for this project"
msgstr ""

#: app/routes/timer.py:533
msgid "No active timer to stop"
msgstr ""

#: app/routes/timer.py:623 app/templates/issues/edit.html:62
#: app/templates/issues/new.html:56 app/templates/main/dashboard.html:91
#: app/templates/recurring_tasks/list.html:53
#: app/templates/timer/timer_page.html:59 app/templates/user/profile.html:60
#: app/templates/user/profile.html:98
msgid "No project"
msgstr ""

#: app/routes/timer.py:634
#, python-format
msgid "Cannot stop timer: %(error)s"
msgstr ""

#: app/routes/timer.py:639
msgid "Could not stop timer due to an error. Please try again or contact support if the problem persists."
msgstr ""

#: app/routes/timer.py:651
msgid "No active timer to pause"
msgstr ""

#: app/routes/timer.py:655
msgid "Timer paused"
msgstr ""

#: app/routes/timer.py:660
msgid "Could not pause timer. Please try again."
msgstr ""

#: app/routes/timer.py:676
msgid "No active timer to resume"
msgstr ""

#: app/routes/timer.py:680 app/routes/timer.py:2202
msgid "Timer resumed"
msgstr ""

#: app/routes/timer.py:685
msgid "Could not resume timer. Please try again."
msgstr ""

#: app/routes/timer.py:701
msgid "No active timer to adjust"
msgstr ""

#: app/routes/timer.py:707
msgid "Invalid adjustment value"
msgstr ""

#: app/routes/timer.py:779
msgid "You can only edit your own timers"
msgstr ""

#: app/routes/timer.py:841
msgid "Invalid task selected for the chosen project"
msgstr ""

#: app/routes/timer.py:869
msgid "Start time cannot be in the future"
msgstr ""

#: app/routes/timer.py:877
msgid "Invalid start date/time format"
msgstr ""

#: app/routes/timer.py:894 app/routes/timer.py:1423 app/templates/base.html:415
#: app/templates/timer/manual_entry.html:648
msgid "End time must be after start time"
msgstr ""

#: app/routes/timer.py:902
msgid "Invalid end date/time format"
msgstr ""

#: app/routes/timer.py:961
msgid "Timer updated successfully"
msgstr ""

#: app/routes/timer.py:979
msgid "You do not have permission to view this time entry"
msgstr ""

#: app/routes/timer.py:1034
msgid "You can only delete your own timers"
msgstr ""

#: app/routes/timer.py:1039
msgid "Cannot delete an active timer"
msgstr ""

#: app/routes/timer.py:1085 app/routes/timer.py:1092
msgid "Could not delete timer due to a database error. Please check server logs."
msgstr ""

#: app/routes/timer.py:1147 app/routes/timer.py:2983
msgid "No time entries selected"
msgstr ""

#: app/routes/timer.py:1153 app/routes/timer.py:2995
msgid "Invalid entry IDs"
msgstr ""

#: app/routes/timer.py:1159 app/routes/timer.py:3001
#: app/templates/client_portal/time_entries.html:167
#: app/templates/client_portal/widgets/time_entries.html:68
msgid "No time entries found"
msgstr ""

#: app/routes/timer.py:1195
#, python-format
msgid "Successfully deleted %(count)d time entry/entries"
msgstr ""

#: app/routes/timer.py:1198 app/routes/timer.py:3055
#, python-format
msgid "Skipped %(count)d time entry/entries (no permission or active timer)"
msgstr ""

#: app/routes/timer.py:1309 app/templates/timer/manual_entry.html:622
msgid "Please provide either start/end date+time or a worked time duration (HH:MM)."
msgstr ""

#: app/routes/timer.py:1334
msgid "Either a project or a client must be selected"
msgstr ""

#: app/routes/timer.py:1394
msgid "Invalid date/time format"
msgstr ""

#: app/routes/timer.py:1501
#, python-format
msgid "Manual entry created for %(project)s - %(task)s"
msgstr ""

#: app/routes/timer.py:1504
#, python-format
msgid "Manual entry created for %(target)s"
msgstr ""

#: app/routes/timer.py:1628
msgid "All fields are required"
msgstr ""

#: app/routes/timer.py:1649
msgid "Cannot create time entries for an archived project. Please unarchive the project first."
msgstr ""

#: app/routes/timer.py:1657
msgid "Cannot create time entries for an inactive project"
msgstr ""

#: app/routes/timer.py:1669
msgid "Invalid task selected"
msgstr ""

#: app/routes/timer.py:1685
msgid "End date must be after or equal to start date"
msgstr ""

#: app/routes/timer.py:1695
msgid "Date range cannot exceed 31 days"
msgstr ""

#: app/routes/timer.py:1725
msgid "Invalid time format"
msgstr ""

#: app/routes/timer.py:1747
msgid "No valid dates found in the selected range"
msgstr ""

#: app/routes/timer.py:1813
msgid "Could not create bulk entries due to a database error. Please check server logs."
msgstr ""

#: app/routes/timer.py:1832
msgid "An error occurred while creating bulk entries. Please try again."
msgstr ""

#: app/routes/timer.py:1961
msgid "You can only duplicate your own timers"
msgstr ""

#: app/routes/timer.py:2019
msgid "You can only resume your own timers"
msgstr ""

#: app/routes/timer.py:2038
msgid "Project no longer exists"
msgstr ""

#: app/routes/timer.py:2064
msgid "Client no longer exists or is inactive"
msgstr ""

#: app/routes/timer.py:2070
msgid "Timer is not linked to a project or client"
msgstr ""

#: app/routes/timer.py:2098
msgid "Could not resume timer due to a database error. Please check server logs."
msgstr ""

#: app/routes/timer.py:2149
msgid "Resumed timer"
msgstr ""

#: app/routes/timer.py:2987
msgid "Invalid paid status"
msgstr ""

#: app/routes/timer.py:3042
msgid "Could not update time entries due to a database error. Please check server logs."
msgstr ""

#: app/routes/timer.py:3046
#, python-format
msgid "Successfully marked %(count)d time entry/entries as %(status)s"
msgstr ""

#: app/routes/timer.py:3049
msgid "paid"
msgstr ""

#: app/routes/timer.py:3049
msgid "unpaid"
msgstr ""

#: app/routes/user.py:114
msgid "Invalid timezone selected"
msgstr ""

#: app/routes/user.py:169
msgid "Standard hours per day must be between 0.5 and 24"
msgstr ""

#: app/routes/user.py:182
msgid "Standard hours per week must be between 1 and 168"
msgstr ""

#: app/routes/user.py:200
msgid "Settings saved successfully"
msgstr ""

#: app/routes/user.py:205
#, python-format
msgid "Error saving settings: %(error)s"
msgstr ""

#: app/routes/user.py:244
msgid "This instance is already licensed."
msgstr ""

#: app/routes/user.py:265
msgid "License activated. Thank you for supporting TimeTracker!"
msgstr ""

#: app/routes/user.py:267
msgid "Error saving settings."
msgstr ""

#: app/routes/user.py:360
msgid "Preferences updated"
msgstr ""

#: app/routes/user.py:409
msgid "Language updated successfully"
msgstr ""

#: app/routes/user.py:411 app/routes/user.py:440
msgid "Invalid language"
msgstr ""

#: app/routes/user.py:434
#, python-format
msgid "Language updated to %(language)s"
msgstr ""

#: app/routes/webhooks.py:41
msgid "Webhook name is required"
msgstr ""

#: app/routes/webhooks.py:47
msgid "Webhook URL is required"
msgstr ""

#: app/routes/webhooks.py:55
msgid "At least one event must be selected"
msgstr ""

#: app/routes/webhooks.py:81
msgid "Webhook created successfully"
msgstr ""

#: app/routes/webhooks.py:85
msgid "Error creating webhook"
msgstr ""

#: app/routes/webhooks.py:88
#, python-format
msgid "Error creating webhook: %(error)s"
msgstr ""

#: app/routes/webhooks.py:150
msgid "Webhook updated successfully"
msgstr ""

#: app/routes/webhooks.py:154
#, python-format
msgid "Error updating webhook: %(error)s"
msgstr ""

#: app/routes/webhooks.py:175
msgid "Webhook deleted successfully"
msgstr ""

#: app/routes/webhooks.py:178
#, python-format
msgid "Error deleting webhook: %(error)s"
msgstr ""

#: app/routes/weekly_goals.py:80 app/routes/weekly_goals.py:224
msgid "Please enter a valid target hours (greater than 0)"
msgstr ""

#: app/routes/weekly_goals.py:101
msgid "A goal already exists for this week. Please edit the existing goal instead."
msgstr ""

#: app/routes/weekly_goals.py:116
msgid "Weekly time goal created successfully!"
msgstr ""

#: app/routes/weekly_goals.py:132
msgid "Failed to create goal. Please try again."
msgstr ""

#: app/routes/weekly_goals.py:147
msgid "You do not have permission to view this goal"
msgstr ""

#: app/routes/weekly_goals.py:208
msgid "You do not have permission to edit this goal"
msgstr ""

#: app/routes/weekly_goals.py:245
msgid "Weekly time goal updated successfully!"
msgstr ""

#: app/routes/weekly_goals.py:262
msgid "Failed to update goal. Please try again."
msgstr ""

#: app/routes/weekly_goals.py:277
msgid "You do not have permission to delete this goal"
msgstr ""

#: app/routes/weekly_goals.py:285
msgid "Weekly time goal deleted successfully"
msgstr ""

#: app/routes/weekly_goals.py:295
msgid "Failed to delete goal. Please try again."
msgstr ""

#: app/routes/workflows.py:58
msgid "Workflow created successfully"
msgstr ""

#: app/routes/workflows.py:63 app/routes/workflows.py:139
msgid "Task Status Changes"
msgstr ""

#: app/routes/workflows.py:64 app/routes/workflows.py:140
msgid "Task Created"
msgstr ""

#: app/routes/workflows.py:65 app/routes/workflows.py:141
msgid "Task Completed"
msgstr ""

#: app/routes/workflows.py:66 app/routes/workflows.py:142
msgid "Time Logged"
msgstr ""

#: app/routes/workflows.py:67 app/routes/workflows.py:143
msgid "Deadline Approaching"
msgstr ""

#: app/routes/workflows.py:68 app/routes/workflows.py:144
msgid "Budget Threshold Reached"
msgstr ""

#: app/routes/workflows.py:69
msgid "Invoice Created"
msgstr ""

#: app/routes/workflows.py:70
msgid "Invoice Paid"
msgstr ""

#: app/routes/workflows.py:74 app/routes/workflows.py:148
msgid "Log Time Entry"
msgstr ""

#: app/routes/workflows.py:75 app/routes/workflows.py:149
msgid "Send Notification"
msgstr ""

#: app/routes/workflows.py:76 app/routes/workflows.py:150
#: app/templates/expenses/list.html:234 app/templates/invoices/list.html:140
#: app/templates/payments/list.html:253 app/templates/per_diem/list.html:183
#: app/templates/tasks/list.html:177
msgid "Update Status"
msgstr ""

#: app/routes/workflows.py:77 app/routes/workflows.py:151
msgid "Assign Task"
msgstr ""

#: app/routes/workflows.py:78 app/templates/issues/view.html:80
#: app/templates/tasks/create.html:4 app/templates/tasks/create.html:16
#: app/templates/tasks/create.html:139
msgid "Create Task"
msgstr ""

#: app/routes/workflows.py:79
msgid "Update Project"
msgstr ""

#: app/routes/workflows.py:80 app/templates/invoices/edit.html:10
#: app/templates/invoices/view.html:519 app/templates/quotes/view.html:41
#: app/templates/quotes/view.html:480
msgid "Send Email"
msgstr ""

#: app/routes/workflows.py:81
msgid "Trigger Webhook"
msgstr ""

#: app/routes/workflows.py:135
msgid "Workflow updated successfully"
msgstr ""

#: app/routes/workflows.py:175
msgid "Workflow deleted successfully"
msgstr ""

#: app/routes/workforce.py:121
#, python-format
msgid "Timesheet period ready: %(start)s to %(end)s"
msgstr ""

#: app/routes/workforce.py:136
msgid "Timesheet period submitted"
msgstr ""

#: app/routes/workforce.py:158
msgid "Timesheet period approved"
msgstr ""

#: app/routes/workforce.py:180
msgid "Timesheet period rejected"
msgstr ""

#: app/routes/workforce.py:191
msgid "Only admins can close periods"
msgstr ""

#: app/routes/workforce.py:202
msgid "Timesheet period closed"
msgstr ""

#: app/routes/workforce.py:243
msgid "Timesheet policy updated"
msgstr ""

#: app/routes/workforce.py:257
msgid "Name and code are required"
msgstr ""

#: app/routes/workforce.py:270
msgid "Leave type created"
msgstr ""

#: app/routes/workforce.py:303
msgid "Leave type and date range are required"
msgstr ""

#: app/routes/workforce.py:320
msgid "Time-off request submitted"
msgstr ""

#: app/routes/workforce.py:344
msgid "Time-off request approved"
msgstr ""

#: app/routes/workforce.py:368
msgid "Time-off request rejected"
msgstr ""

#: app/routes/workforce.py:405
msgid "Name and date range are required"
msgstr ""

#: app/routes/workforce.py:411
msgid "Holiday created"
msgstr ""

#: app/routes/workforce.py:441
msgid "Start date and end date are required for payroll export"
msgstr ""

#: app/routes/workforce.py:505
msgid "Start date and end date are required for capacity export"
msgstr ""

#: app/templates/_components.html:213
msgid "remaining"
msgstr ""

#: app/templates/admin/webhooks/list.html:68
#: app/templates/admin/webhooks/view.html:114 app/templates/base.html:378
#: app/templates/integrations/health.html:60
#: app/templates/integrations/view.html:53
#: app/templates/integrations/view.html:84
#: app/templates/kanban/columns.html:226 app/templates/reports/builder.html:772
msgid "Success"
msgstr ""

#: app/templates/admin/email_support.html:401
#: app/templates/admin/email_support.html:500 app/templates/base.html:379
#: app/templates/integrations/health.html:64
#: app/templates/integrations/view.html:55
#: app/templates/integrations/view.html:86
#: app/templates/main/dashboard.html:691 app/templates/reports/builder.html:792
#: app/templates/reports/builder.html:806
#: app/templates/reports/scheduled.html:71
#: app/templates/timer/manual_entry.html:400
#: app/templates/timer/manual_entry.html:412
#: app/templates/timer/manual_entry.html:444
#: app/templates/timer/manual_entry.html:533
#: app/templates/timer/manual_entry.html:560
#: app/templates/timer/manual_entry.html:583
#: app/templates/timer/manual_entry.html:598
#: app/templates/timer/manual_entry.html:624
#: app/templates/timer/manual_entry.html:650
#: app/templates/timer/timer_page.html:364
msgid "Error"
msgstr ""

#: app/templates/base.html:380 app/templates/budget/dashboard.html:161
#: app/templates/budget/project_detail.html:67
#: app/templates/main/dashboard.html:1616 app/templates/projects/view.html:287
#: app/templates/timer/edit_timer.html:881
#: app/templates/timer/manual_entry.html:1055 app/utils/i18n_helpers.py:275
#: app/utils/i18n_helpers.py:281
msgid "Warning"
msgstr ""

#: app/templates/base.html:381 app/templates/calendar/event_detail.html:170
#: app/templates/quotes/view.html:404
msgid "Information"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:51
#: app/templates/analytics/dashboard.html:208
#: app/templates/analytics/dashboard_improved.html:200
#: app/templates/analytics/mobile_dashboard.html:148
#: app/templates/base.html:384
#: app/templates/components/activity_feed_widget.html:237
#: app/templates/components/ui.html:275
#: app/templates/import_export/index.html:128
#: app/templates/import_export/index.html:202
#: app/templates/main/dashboard.html:180 app/templates/main/dashboard.html:201
#: app/templates/main/dashboard.html:222
#: app/templates/reports/unpaid_hours_report.html:64
#: app/templates/timer/calendar.html:678
msgid "Loading..."
msgstr ""

#: app/templates/admin/email_support.html:342 app/templates/base.html:385
#: app/templates/client_notes/edit.html:115
#: app/templates/client_portal/dashboard.html:135
#: app/templates/comments/_comments_section.html:169
#: app/templates/comments/edit.html:112 app/templates/reports/builder.html:674
#: app/templates/settings/keyboard_shortcuts.html:469
msgid "Saving..."
msgstr ""

#: app/templates/base.html:386
msgid "Deleting..."
msgstr ""

#: app/templates/admin/api_tokens.html:461
#: app/templates/admin/api_tokens.html:494
#: app/templates/admin/custom_field_definitions/form.html:66
#: app/templates/admin/email_templates/create.html:120
#: app/templates/admin/email_templates/edit.html:137
#: app/templates/admin/email_templates/list.html:80
#: app/templates/admin/integrations/setup.html:162
#: app/templates/admin/ldap_setup_wizard.html:265
#: app/templates/admin/link_templates/form.html:72
#: app/templates/admin/oidc_setup_wizard.html:316
#: app/templates/admin/pdf_layout.html:4409
#: app/templates/admin/pdf_layout.html:7736
#: app/templates/admin/quote_pdf_layout.html:3928
#: app/templates/admin/quote_pdf_layout.html:7176
#: app/templates/admin/roles/form.html:149
#: app/templates/admin/roles/list.html:215
#: app/templates/admin/salesman_email_mappings.html:145
#: app/templates/admin/settings.html:716 app/templates/admin/users.html:124
#: app/templates/admin/users/roles.html:57
#: app/templates/admin/webhooks/form.html:128
#: app/templates/approvals/list.html:138 app/templates/approvals/view.html:157
#: app/templates/auth/change_password.html:37 app/templates/base.html:387
#: app/templates/calendar/event_detail.html:194
#: app/templates/calendar/event_form.html:237
#: app/templates/chat/channel.html:268 app/templates/chat/index.html:122
#: app/templates/client_notes/edit.html:83
#: app/templates/client_portal/dashboard.html:88
#: app/templates/client_portal/new_issue.html:82
#: app/templates/client_portal/quote_detail.html:168
#: app/templates/clients/create.html:108 app/templates/clients/edit.html:143
#: app/templates/clients/view.html:238 app/templates/clients/view.html:461
#: app/templates/clients/view.html:598 app/templates/clients/view.html:634
#: app/templates/comments/_comment.html:120
#: app/templates/comments/_comment.html:140
#: app/templates/comments/_comment.html:164
#: app/templates/comments/_comments_section.html:44
#: app/templates/comments/edit.html:83
#: app/templates/contacts/communication_form.html:82
#: app/templates/contacts/form.html:99
#: app/templates/deals/activity_form.html:63 app/templates/deals/form.html:112
#: app/templates/expenses/view.html:401
#: app/templates/import_export/index.html:239
#: app/templates/import_export/index.html:277
#: app/templates/integrations/activitywatch_setup.html:148
#: app/templates/integrations/caldav_setup.html:202
#: app/templates/integrations/wizard_base.html:55
#: app/templates/inventory/adjustments/form.html:56
#: app/templates/inventory/movements/form.html:114
#: app/templates/inventory/purchase_orders/form.html:101
#: app/templates/inventory/stock_items/form.html:134
#: app/templates/inventory/suppliers/form.html:85
#: app/templates/inventory/transfers/form.html:60
#: app/templates/inventory/warehouses/form.html:60
#: app/templates/invoice_approvals/list.html:85
#: app/templates/invoice_approvals/request.html:38
#: app/templates/invoices/edit.html:286 app/templates/invoices/edit.html:670
#: app/templates/invoices/generate_from_time.html:136
#: app/templates/invoices/list.html:171 app/templates/invoices/view.html:383
#: app/templates/issues/edit.html:86 app/templates/issues/new.html:80
#: app/templates/kanban/columns.html:162
#: app/templates/kanban/create_column.html:86
#: app/templates/kanban/edit_column.html:88
#: app/templates/leads/activity_form.html:63
#: app/templates/leads/convert_to_client.html:35
#: app/templates/leads/convert_to_deal.html:63
#: app/templates/leads/form.html:103 app/templates/main/dashboard.html:790
#: app/templates/payment_gateways/create.html:79
#: app/templates/payment_gateways/pay.html:35
#: app/templates/per_diem/rates_list.html:113
#: app/templates/project_templates/create.html:106
#: app/templates/project_templates/create_project.html:66
#: app/templates/project_templates/edit.html:136
#: app/templates/projects/add_cost.html:98
#: app/templates/projects/add_good.html:68
#: app/templates/projects/archive.html:82
#: app/templates/projects/create.html:137
#: app/templates/projects/create.html:307 app/templates/projects/edit.html:128
#: app/templates/projects/edit_cost.html:105
#: app/templates/projects/edit_good.html:68
#: app/templates/projects/view.html:365 app/templates/quotes/accept.html:54
#: app/templates/quotes/create.html:262 app/templates/quotes/edit.html:348
#: app/templates/quotes/view.html:304 app/templates/quotes/view.html:385
#: app/templates/quotes/view.html:477 app/templates/quotes/view.html:551
#: app/templates/quotes/view.html:569 app/templates/quotes/view.html:581
#: app/templates/recurring_tasks/form.html:128
#: app/templates/reports/builder.html:220 app/templates/reports/index.html:492
#: app/templates/reports/schedule_form.html:100
#: app/templates/settings/keyboard_shortcuts.html:484
#: app/templates/tasks/create.html:138 app/templates/tasks/edit.html:146
#: app/templates/tasks/list.html:216 app/templates/tasks/list.html:423
#: app/templates/timer/calendar.html:204 app/templates/timer/calendar.html:829
#: app/templates/timer/calendar.html:1119
#: app/templates/timer/time_entries_overview.html:181
#: app/templates/timer/time_entries_overview.html:207
#: app/templates/user/settings.html:494
#: app/templates/weekly_goals/create.html:125
#: app/templates/weekly_goals/edit.html:112
msgid "Cancel"
msgstr ""

#: app/templates/base.html:388
msgid "Confirm"
msgstr ""

#: app/templates/admin/pdf_layout.html:2361
#: app/templates/admin/quote_pdf_layout.html:2133
#: app/templates/approvals/list.html:129 app/templates/approvals/view.html:148
#: app/templates/base.html:389 app/templates/base.html:1427
#: app/templates/base.html:1504 app/templates/calendar/view.html:148
#: app/templates/chat/index.html:101
#: app/templates/components/support_modal.html:18
#: app/templates/invoices/list.html:155 app/templates/invoices/view.html:367
#: app/templates/kanban/columns.html:143 app/templates/main/dashboard.html:707
#: app/templates/partials/_bottom_nav.html:18
#: app/templates/projects/create.html:267 app/templates/quotes/view.html:447
#: app/templates/tasks/_kanban.html:1363 app/templates/timer/calendar.html:234
#: app/templates/timer/calendar.html:259
#: app/templates/workforce/dashboard.html:87
msgid "Close"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:67
#: app/templates/admin/link_templates/form.html:73
#: app/templates/admin/salesman_email_mappings.html:148
#: app/templates/admin/webhooks/form.html:125 app/templates/base.html:390
#: app/templates/calendar/view.html:112
#: app/templates/client_portal/dashboard.html:91
#: app/templates/comments/_comment.html:137
#: app/templates/inventory/stock_items/form.html:137
#: app/templates/inventory/suppliers/form.html:88
#: app/templates/inventory/warehouses/form.html:63
#: app/templates/recurring_tasks/form.html:130
#: app/templates/reports/builder.html:69 app/templates/reports/builder.html:221
msgid "Save"
msgstr ""

#: app/templates/admin/api_tokens.html:493
#: app/templates/admin/custom_field_definitions/list.html:67
#: app/templates/admin/email_templates/list.html:83
#: app/templates/admin/link_templates/list.html:71
#: app/templates/admin/roles/list.html:149
#: app/templates/admin/roles/list.html:214 app/templates/admin/users.html:83
#: app/templates/admin/users.html:123 app/templates/base.html:391
#: app/templates/calendar/event_detail.html:26
#: app/templates/calendar/event_detail.html:193
#: app/templates/calendar/view.html:154 app/templates/clients/view.html:278
#: app/templates/clients/view.html:280 app/templates/clients/view.html:512
#: app/templates/clients/view.html:633 app/templates/comments/_comment.html:41
#: app/templates/comments/_comment.html:85 app/templates/expenses/view.html:400
#: app/templates/integrations/view.html:156 app/templates/issues/view.html:16
#: app/templates/issues/view.html:19 app/templates/kanban/columns.html:103
#: app/templates/per_diem/rates_list.html:80
#: app/templates/per_diem/rates_list.html:112
#: app/templates/projects/goods.html:81 app/templates/projects/view.html:405
#: app/templates/projects/view.html:407
#: app/templates/quotes/_quotes_list.html:15 app/templates/quotes/list.html:368
#: app/templates/quotes/view.html:331 app/templates/quotes/view.html:356
#: app/templates/quotes/view.html:584
#: app/templates/reports/saved_views_list.html:69
#: app/templates/reports/scheduled.html:100
#: app/templates/saved_filters/list.html:51 app/templates/tasks/list.html:422
#: app/templates/time_entry_templates/list.html:44
#: app/templates/time_entry_templates/view.html:144
#: app/templates/timer/_time_entries_list.html:21
#: app/templates/timer/calendar.html:232 app/templates/timer/calendar.html:829
#: app/templates/timer/calendar.html:991 app/templates/timer/calendar.html:1118
#: app/templates/timer/time_entries_overview.html:184
#: app/templates/weekly_goals/edit.html:115
#: app/templates/weekly_goals/edit.html:117
#: app/templates/workforce/dashboard.html:94
#: app/templates/workforce/dashboard.html:193
#: app/templates/workforce/dashboard.html:267
#: app/templates/workforce/dashboard.html:292
msgid "Delete"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:8
#: app/templates/admin/custom_field_definitions/list.html:62
#: app/templates/admin/link_templates/form.html:8
#: app/templates/admin/link_templates/list.html:66
#: app/templates/admin/roles/list.html:144 app/templates/admin/users.html:77
#: app/templates/admin/webhooks/view.html:18 app/templates/base.html:392
#: app/templates/calendar/event_detail.html:22
#: app/templates/calendar/view.html:151 app/templates/clients/edit.html:10
#: app/templates/clients/view.html:504 app/templates/comments/_comment.html:36
#: app/templates/contacts/list.html:59 app/templates/deals/view.html:14
#: app/templates/kanban/columns.html:93 app/templates/leads/view.html:14
#: app/templates/per_diem/rates_list.html:70
#: app/templates/project_templates/list.html:60
#: app/templates/project_templates/view.html:17
#: app/templates/quotes/view.html:328 app/templates/quotes/view.html:353
#: app/templates/recurring_invoices/view.html:16
#: app/templates/reports/iterative_view.html:19
#: app/templates/reports/saved_views_list.html:64
#: app/templates/tasks/edit.html:16 app/templates/tasks/overdue.html:74
#: app/templates/timer/_time_entries_list.html:182
#: app/templates/timer/calendar.html:239 app/templates/timer/calendar.html:818
#: app/templates/timer/calendar.html:988 app/templates/timer/view_timer.html:17
#: app/templates/weekly_goals/index.html:196
#: app/templates/weekly_goals/view.html:26
msgid "Edit"
msgstr ""

#: app/templates/base.html:393
msgid "Add"
msgstr ""

#: app/templates/admin/settings.html:715 app/templates/base.html:394
#: app/templates/inventory/purchase_orders/form.html:153
#: app/templates/inventory/stock_items/form.html:120
#: app/templates/inventory/stock_items/form.html:171
#: app/templates/quotes/_edit_quote_form_scripts.html:204
#: app/templates/quotes/_edit_quote_form_scripts.html:239
#: app/templates/quotes/edit.html:171 app/templates/quotes/edit.html:229
#: app/templates/reports/builder.html:433
msgid "Remove"
msgstr ""

#: app/templates/admin/settings.html:828 app/templates/admin/users.html:108
#: app/templates/base.html:397 app/templates/integrations/health.html:78
#: app/templates/inventory/stock_levels/warehouse.html:77
msgid "OK"
msgstr ""

#: app/templates/base.html:400
msgid "Are you sure you want to delete this?"
msgstr ""

#: app/templates/base.html:401
msgid "You have unsaved changes. Are you sure you want to leave?"
msgstr ""

#: app/templates/base.html:402
msgid "Operation failed"
msgstr ""

#: app/templates/base.html:403
msgid "Operation completed successfully"
msgstr ""

#: app/templates/base.html:404
msgid "No items selected"
msgstr ""

#: app/templates/base.html:405
msgid "Invalid input"
msgstr ""

#: app/templates/base.html:406
msgid "This field is required"
msgstr ""

#: app/templates/base.html:407 app/templates/kiosk/base.html:103
#: app/templates/user/profile.html:62
msgid "No active timer"
msgstr ""

#: app/templates/base.html:408
msgid "Timer stopped"
msgstr ""

#: app/templates/base.html:409
msgid "Failed to stop timer"
msgstr ""

#: app/templates/base.html:410
msgid "Error stopping timer"
msgstr ""

#: app/templates/base.html:411
msgid "No form to save"
msgstr ""

#: app/templates/base.html:412
msgid "No timer found"
msgstr ""

#: app/templates/base.html:413
msgid "Timer stopped due to inactivity"
msgstr ""

#: app/templates/base.html:414 app/templates/main/dashboard.html:689
#: app/templates/timer/manual_entry.html:531
#: app/templates/timer/timer_page.html:362
msgid "Please select either a project or a client"
msgstr ""

#: app/templates/base.html:477
msgid "Skip to content"
msgstr ""

#: app/templates/base.html:480
msgid "Main navigation"
msgstr ""

#: app/templates/base.html:502 app/templates/timer/calendar.html:277
msgid "Navigation"
msgstr ""

#: app/templates/base.html:507 app/templates/base.html:508
#: app/templates/base.html:1222
msgid "Open command palette"
msgstr ""

#: app/templates/base.html:512
msgid "Commands"
msgstr ""

#: app/templates/base.html:519
msgid "Toggle sidebar"
msgstr ""

#: app/templates/base.html:525 app/templates/base.html:527
#: app/templates/client_portal/base.html:254
#: app/templates/client_portal/base.html:339
#: app/templates/main/dashboard.html:28 app/templates/main/dashboard.html:29
#: app/templates/main/donate.html:8 app/templates/partials/_bottom_nav.html:60
#: app/templates/partials/_bottom_nav.html:64
#: app/templates/projects/view.html:35
msgid "Dashboard"
msgstr ""

#: app/templates/base.html:531 app/templates/base.html:533
#: app/templates/base.html:1253 app/templates/kiosk/base.html:155
#: app/templates/main/dashboard.html:38
#: app/templates/partials/_bottom_nav.html:66
#: app/templates/partials/_bottom_nav.html:70
#: app/templates/tasks/overdue.html:76 app/templates/timer/timer_page.html:7
#: app/templates/timer/timer_page.html:12
msgid "Timer"
msgstr ""

#: app/templates/base.html:537 app/templates/base.html:539
#: app/templates/main/dashboard.html:250
#: app/templates/partials/_bottom_nav.html:72
#: app/templates/partials/_bottom_nav.html:76
msgid "Time entries"
msgstr ""

#: app/templates/base.html:544 app/templates/base.html:546
#: app/templates/base.html:733 app/templates/base.html:902
#: app/templates/base.html:1479 app/templates/budget/dashboard.html:17
#: app/templates/client_portal/base.html:293
#: app/templates/client_portal/base.html:372
#: app/templates/client_portal/reports.html:4
#: app/templates/client_portal/reports.html:9
#: app/templates/client_portal/reports.html:14
#: app/templates/components/support_modal.html:33
#: app/templates/partials/_bottom_nav.html:46
#: app/templates/reports/index.html:7 app/templates/reports/index.html:12
#: app/templates/reports/week_in_review.html:6
msgid "Reports"
msgstr ""

#: app/templates/base.html:552 app/templates/base.html:554
#: app/templates/calendar/view.html:12 app/templates/calendar/view.html:17
#: app/templates/timer/calendar.html:3 app/templates/timer/calendar.html:23
msgid "Calendar"
msgstr ""

#: app/templates/base.html:562 app/templates/main/help.html:181
msgid "Calendar View"
msgstr ""

#: app/templates/base.html:567 app/templates/base.html:930
#: app/templates/integrations/list.html:4
#: app/templates/integrations/wizard_base.html:8
#: app/templates/setup/initial_setup.html:202
msgid "Integrations"
msgstr ""

#: app/templates/admin/modules.html:172 app/templates/admin/modules.html:214
#: app/templates/auth/login.html:34 app/templates/base.html:574
#: app/templates/base.html:576 app/templates/main/about.html:29
#: app/templates/main/help.html:27 app/templates/main/help.html:108
#: app/templates/main/help.html:266 app/templates/timer/manual_entry.html:7
msgid "Time Tracking"
msgstr ""

#: app/templates/base.html:596
msgid "Time Approvals"
msgstr ""

#: app/templates/base.html:608 app/templates/project_templates/list.html:4
msgid "Project Templates"
msgstr ""

#: app/templates/base.html:615 app/templates/gantt/view.html:4
msgid "Gantt Chart"
msgstr ""

#: app/templates/base.html:621 app/templates/calendar/view.html:80
#: app/templates/calendar/view.html:97 app/templates/calendar/view.html:98
#: app/templates/calendar/view.html:108
#: app/templates/components/activity_feed_widget.html:27
#: app/templates/components/offline_indicator.html:75
#: app/templates/integrations/wizard_asana.html:116
#: app/templates/reports/builder.html:368 app/templates/tasks/create.html:16
#: app/templates/tasks/edit.html:16 app/templates/tasks/overdue.html:8
#: app/templates/tasks/view.html:47
msgid "Tasks"
msgstr ""

#: app/templates/base.html:627 app/templates/client_portal/base.html:273
#: app/templates/client_portal/base.html:358
#: app/templates/client_portal/issue_detail.html:9
#: app/templates/client_portal/issues.html:4
#: app/templates/client_portal/issues.html:9
#: app/templates/client_portal/new_issue.html:9
#: app/templates/integrations/wizard_github.html:100
#: app/templates/integrations/wizard_gitlab.html:136
msgid "Issues"
msgstr ""

#: app/templates/base.html:634 app/templates/kanban/board.html:9
#: app/templates/kanban/board.html:55 app/templates/main/help.html:31
#: app/templates/main/help.html:346 app/templates/tasks/_kanban.html:9
msgid "Kanban Board"
msgstr ""

#: app/templates/base.html:641 app/templates/weekly_goals/index.html:8
msgid "Weekly Goals"
msgstr ""

#: app/templates/base.html:647
msgid "Workforce"
msgstr ""

#: app/templates/base.html:653 app/templates/base.html:1117
msgid "Time Entry Templates"
msgstr ""

#: app/templates/admin/modules.html:174 app/templates/admin/modules.html:216
#: app/templates/base.html:661 app/templates/base.html:663
msgid "CRM"
msgstr ""

#: app/templates/base.html:675 app/templates/clients/create.html:10
#: app/templates/clients/edit.html:10 app/templates/clients/view.html:53
#: app/templates/components/activity_feed_widget.html:43
#: app/templates/partials/_bottom_nav.html:38
msgid "Clients"
msgstr ""

#: app/templates/base.html:682 app/templates/integrations/wizard_xero.html:102
msgid "Contacts"
msgstr ""

#: app/templates/base.html:683
msgid "via Clients"
msgstr ""

#: app/templates/base.html:690 app/templates/deals/activity_form.html:8
#: app/templates/deals/view.html:8
msgid "Deals"
msgstr ""

#: app/templates/base.html:697 app/templates/leads/activity_form.html:8
#: app/templates/leads/convert_to_client.html:8
#: app/templates/leads/convert_to_deal.html:8 app/templates/leads/view.html:8
msgid "Leads"
msgstr ""

#: app/templates/base.html:704 app/templates/client_portal/quote_detail.html:9
#: app/templates/client_portal/quotes.html:4
#: app/templates/client_portal/quotes.html:9
#: app/templates/client_portal/quotes.html:14
msgid "Quotes"
msgstr ""

#: app/templates/admin/modules.html:175 app/templates/admin/modules.html:217
#: app/templates/base.html:715
msgid "Finance & Expenses"
msgstr ""

#: app/templates/base.html:740
msgid "All Reports"
msgstr ""

#: app/templates/base.html:746 app/templates/reports/index.html:201
msgid "Report Builder"
msgstr ""

#: app/templates/base.html:751 app/templates/reports/builder.html:17
msgid "Saved Views"
msgstr ""

#: app/templates/base.html:758 app/templates/reports/index.html:159
#: app/templates/reports/index.html:214 app/templates/reports/index.html:262
#: app/templates/reports/scheduled.html:4
msgid "Scheduled Reports"
msgstr ""

#: app/templates/base.html:768 app/templates/client_portal/base.html:260
#: app/templates/client_portal/base.html:345
#: app/templates/client_portal/invoice_detail.html:9
#: app/templates/client_portal/invoices.html:4
#: app/templates/client_portal/invoices.html:9
#: app/templates/client_portal/invoices.html:14
#: app/templates/components/activity_feed_widget.html:39
#: app/templates/integrations/wizard_quickbooks.html:101
#: app/templates/integrations/wizard_xero.html:84
#: app/templates/invoices/create.html:8 app/templates/invoices/edit.html:13
#: app/templates/invoices/view.html:46
#: app/templates/partials/_bottom_nav.html:30
#: app/templates/reports/builder.html:369
msgid "Invoices"
msgstr ""

#: app/templates/base.html:775
msgid "Invoice Approvals"
msgstr ""

#: app/templates/base.html:782 app/templates/payment_gateways/list.html:4
msgid "Payment Gateways"
msgstr ""

#: app/templates/base.html:789 app/templates/recurring_invoices/list.html:6
#: app/templates/recurring_invoices/list.html:11
msgid "Recurring Invoices"
msgstr ""

#: app/templates/base.html:796
#: app/templates/integrations/wizard_quickbooks.html:113
#: app/templates/integrations/wizard_xero.html:96
msgid "Payments"
msgstr ""

#: app/templates/base.html:803
#: app/templates/integrations/wizard_quickbooks.html:107
#: app/templates/integrations/wizard_xero.html:90
#: app/templates/invoices/edit.html:148 app/templates/invoices/edit.html:338
#: app/templates/main/help.html:33 app/templates/reports/builder.html:370
msgid "Expenses"
msgstr ""

#: app/templates/base.html:810
msgid "Mileage"
msgstr ""

#: app/templates/base.html:817
msgid "Per Diem"
msgstr ""

#: app/templates/base.html:824 app/templates/budget/dashboard.html:7
msgid "Budget Alerts"
msgstr ""

#: app/templates/admin/modules.html:176 app/templates/admin/modules.html:218
#: app/templates/base.html:835
msgid "Inventory"
msgstr ""

#: app/templates/base.html:851 app/templates/inventory/suppliers/view.html:174
msgid "Stock Items"
msgstr ""

#: app/templates/base.html:856
msgid "Warehouses"
msgstr ""

#: app/templates/base.html:861 app/templates/inventory/stock_items/form.html:98
#: app/templates/inventory/stock_items/view.html:60
msgid "Suppliers"
msgstr ""

#: app/templates/base.html:867
msgid "Purchase Orders"
msgstr ""

#: app/templates/base.html:872 app/templates/inventory/warehouses/view.html:79
msgid "Stock Levels"
msgstr ""

#: app/templates/base.html:877
msgid "Stock Movements"
msgstr ""

#: app/templates/base.html:882
msgid "Transfers"
msgstr ""

#: app/templates/base.html:887
msgid "Adjustments"
msgstr ""

#: app/templates/base.html:892
msgid "Reservations"
msgstr ""

#: app/templates/base.html:897
msgid "Low Stock Alerts"
msgstr ""

#: app/templates/admin/modules.html:177 app/templates/admin/modules.html:219
#: app/templates/analytics/dashboard.html:8
#: app/templates/analytics/mobile_dashboard.html:3
#: app/templates/analytics/mobile_dashboard.html:20 app/templates/base.html:912
#: app/templates/main/about.html:38
msgid "Analytics"
msgstr ""

#: app/templates/admin/modules.html:178 app/templates/admin/modules.html:220
#: app/templates/base.html:920
msgid "Tools & Data"
msgstr ""

#: app/templates/base.html:937
msgid "Import / Export"
msgstr ""

#: app/templates/base.html:944
msgid "Saved Filters"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:6
#: app/templates/admin/custom_field_definitions/list.html:6
#: app/templates/admin/ldap_setup_wizard.html:8
#: app/templates/admin/link_templates/form.html:6
#: app/templates/admin/link_templates/list.html:6
#: app/templates/admin/modules.html:15 app/templates/admin/oidc_debug.html:8
#: app/templates/admin/oidc_debug.html:152
#: app/templates/admin/oidc_setup_wizard.html:8
#: app/templates/admin/oidc_user_detail.html:26
#: app/templates/admin/permissions/list.html:6
#: app/templates/admin/roles/list.html:6
#: app/templates/admin/salesman_email_mappings.html:4
#: app/templates/admin/webhooks/form.html:6
#: app/templates/admin/webhooks/list.html:6
#: app/templates/admin/webhooks/view.html:6 app/templates/base.html:955
#: app/templates/comments/_comment.html:19 app/templates/user/profile.html:21
msgid "Admin"
msgstr ""

#: app/templates/base.html:963
msgid "Admin Dashboard"
msgstr ""

#: app/templates/admin/settings.html:145 app/templates/base.html:973
#: app/templates/main/help.html:569
msgid "User Management"
msgstr ""

#: app/templates/base.html:980
msgid "Manage Users"
msgstr ""

#: app/templates/admin/permissions/list.html:7
#: app/templates/admin/roles/list.html:7 app/templates/admin/roles/list.html:12
#: app/templates/admin/user_form.html:123 app/templates/base.html:987
msgid "Roles & Permissions"
msgstr ""

#: app/templates/base.html:1000
msgid "PDF Templates"
msgstr ""

#: app/templates/base.html:1006
msgid "Invoice PDF"
msgstr ""

#: app/templates/base.html:1011
msgid "Quote PDF"
msgstr ""

#: app/templates/base.html:1023 app/templates/main/help.html:65
msgid "System Settings"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:9 app/templates/base.html:1030
#: app/templates/partials/_bottom_nav.html:54 app/templates/user/license.html:2
#: app/templates/user/profile.html:31 app/templates/user/settings.html:2
#: app/templates/user/settings.html:7
msgid "Settings"
msgstr ""

#: app/templates/admin/modules.html:15 app/templates/base.html:1035
msgid "Module Management"
msgstr ""

#: app/templates/admin/email_support.html:18
#: app/templates/admin/salesman_email_mappings.html:86
#: app/templates/base.html:1040
msgid "Email Configuration"
msgstr ""

#: app/templates/base.html:1045
msgid "Email Templates"
msgstr ""

#: app/templates/admin/oidc_debug.html:9
#: app/templates/admin/oidc_setup_wizard.html:9 app/templates/base.html:1052
msgid "OIDC Settings"
msgstr ""

#: app/templates/base.html:1065
msgid "Security & Access"
msgstr ""

#: app/templates/base.html:1072
msgid "API Tokens"
msgstr ""

#: app/templates/audit_logs/list.html:4 app/templates/audit_logs/list.html:8
#: app/templates/audit_logs/list.html:13 app/templates/base.html:1086
msgid "Audit Logs"
msgstr ""

#: app/templates/base.html:1098
msgid "Data Management"
msgstr ""

#: app/templates/base.html:1105
msgid "Expense Categories"
msgstr ""

#: app/templates/base.html:1110
msgid "Per Diem Rates"
msgstr ""

#: app/templates/base.html:1122 app/templates/clients/create.html:78
#: app/templates/clients/edit.html:72 app/templates/clients/view.html:133
#: app/templates/projects/create.html:107 app/templates/projects/edit.html:98
#: app/templates/projects/view.html:160
msgid "Custom Fields"
msgstr ""

#: app/templates/admin/link_templates/form.html:7
#: app/templates/admin/link_templates/list.html:7
#: app/templates/admin/link_templates/list.html:12 app/templates/base.html:1127
msgid "Link Templates"
msgstr ""

#: app/templates/base.html:1140
msgid "System Maintenance"
msgstr ""

#: app/templates/base.html:1147 app/templates/main/about.html:250
#: app/templates/main/help.html:783 app/templates/main/help.html:825
msgid "System Info"
msgstr ""

#: app/templates/base.html:1154
msgid "Backups"
msgstr ""

#: app/templates/base.html:1161
msgid "Telemetry"
msgstr ""

#: app/templates/base.html:1178 app/templates/main/about.html:3
#: app/templates/main/about.html:8 app/templates/main/about.html:12
msgid "About"
msgstr ""

#: app/templates/base.html:1184 app/templates/base.html:1255
#: app/templates/clients/create.html:117 app/templates/main/help.html:3
#: app/templates/main/help.html:8 app/templates/main/help.html:12
#: app/templates/timer/calendar.html:337
msgid "Help"
msgstr ""

#: app/templates/base.html:1189
msgid "Open support options"
msgstr ""

#: app/templates/base.html:1191 app/templates/base.html:1264
#: app/templates/base.html:1266 app/templates/base.html:1329
#: app/templates/components/support_modal.html:9
#: app/templates/main/about.html:46 app/templates/main/donate.html:2
#: app/templates/main/help.html:836 app/templates/user/settings.html:26
msgid "Support TimeTracker"
msgstr ""

#: app/templates/base.html:1211
msgid "Open sidebar"
msgstr ""

#: app/templates/base.html:1219 app/templates/base.html:1220
#: app/templates/components/multi_select.html:68
#: app/templates/inventory/stock_items/list.html:21
#: app/templates/inventory/suppliers/list.html:21
#: app/templates/issues/list.html:31 app/templates/leads/list.html:22
#: app/templates/main/search.html:3 app/templates/quotes/list.html:74
#: app/templates/tasks/my_tasks.html:115
#: app/templates/timer/time_entries_overview.html:118
msgid "Search"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:29 app/templates/base.html:1229
#: app/templates/user/settings.html:215
msgid "Theme"
msgstr ""

#: app/templates/base.html:1234
msgid "Theme options"
msgstr ""

#: app/templates/base.html:1235 app/templates/user/settings.html:220
msgid "Light"
msgstr ""

#: app/templates/base.html:1236 app/templates/kanban/create_column.html:68
#: app/templates/kanban/edit_column.html:60
#: app/templates/user/settings.html:221
msgid "Dark"
msgstr ""

#: app/templates/admin/roles/list.html:132
#: app/templates/admin/users/roles.html:36 app/templates/base.html:1237
#: app/templates/deals/view.html:204 app/templates/kanban/columns.html:54
#: app/templates/kanban/columns.html:86
#: app/templates/setup/initial_setup.html:165
msgid "System"
msgstr ""

#: app/templates/base.html:1244
msgid "Open chat"
msgstr ""

#: app/templates/base.html:1250 app/templates/base.html:1458
#: app/templates/kiosk/dashboard.html:353 app/templates/main/dashboard.html:58
#: app/templates/main/dashboard.html:59 app/templates/main/dashboard.html:704
#: app/templates/tasks/_kanban.html:60 app/templates/tasks/edit.html:285
#: app/templates/tasks/my_tasks.html:341
msgid "Start Timer"
msgstr ""

#: app/templates/base.html:1251 app/templates/mileage/gps.html:32
#: app/templates/reports/time_entries_report.html:104
#: app/templates/reports/time_entries_report.html:118
msgid "Stop"
msgstr ""

#: app/templates/admin/settings.html:516 app/templates/base.html:1259
#: app/templates/base.html:1491 app/templates/base.html:1493
#: app/templates/base.html:1498 app/templates/base.html:1501
msgid "AI Helper"
msgstr ""

#: app/templates/base.html:1273
msgid "Change language"
msgstr ""

#: app/templates/base.html:1278 app/templates/user/settings.html:227
msgid "Language"
msgstr ""

#: app/templates/base.html:1294
msgid "User menu"
msgstr ""

#: app/templates/base.html:1308
msgid "Supporter"
msgstr ""

#: app/templates/base.html:1314 app/templates/base.html:1320
msgid "Guest"
msgstr ""

#: app/templates/base.html:1323
msgid "My Profile"
msgstr ""

#: app/templates/base.html:1324
msgid "My Settings"
msgstr ""

#: app/templates/base.html:1326 app/templates/invoices/edit.html:255
#: app/templates/invoices/edit.html:615 app/templates/main/dashboard.html:648
#: app/templates/projects/add_good.html:34
#: app/templates/projects/edit_good.html:34
#: app/templates/quotes/_edit_quote_form_scripts.html:223
#: app/templates/quotes/edit.html:222 app/templates/user/license.html:2
#: app/templates/user/license.html:7
msgid "License"
msgstr ""

#: app/templates/base.html:1329
msgid "Donate or get a supporter license"
msgstr ""

#: app/templates/base.html:1331 app/templates/client_portal/base.html:302
#: app/templates/client_portal/base.html:379 app/templates/kiosk/base.html:129
msgid "Logout"
msgstr ""

#: app/templates/base.html:1364 app/templates/base.html:2459
#: app/templates/main/dashboard.html:635 app/templates/main/help.html:843
#: app/templates/reports/index.html:20
msgid "Enjoying TimeTracker?"
msgstr ""

#: app/templates/base.html:1367
msgid "Support independent development — licenses are supporter badges, not paywalls."
msgstr ""

#: app/templates/base.html:1374 app/templates/main/about.html:212
msgid "Support / Get key"
msgstr ""

#: app/templates/base.html:1381
msgid "Buy Me a Coffee"
msgstr ""

#: app/templates/base.html:1388 app/utils/i18n_helpers.py:115
#: app/utils/i18n_helpers.py:131
msgid "PayPal"
msgstr ""

#: app/templates/base.html:1391
msgid "Support / License"
msgstr ""

#: app/templates/base.html:1395 app/templates/base.html:1431
msgid "Dismiss"
msgstr ""

#: app/templates/base.html:1408
msgid "Built by an independent developer"
msgstr ""

#: app/templates/base.html:1417
msgid "Software update"
msgstr ""

#: app/templates/base.html:1425
msgid "Read more"
msgstr ""

#: app/templates/base.html:1430
msgid "View Release"
msgstr ""

#: app/templates/base.html:1432
msgid "Don't show again for this version"
msgstr ""

#: app/templates/base.html:1447
msgid "Quick actions dock"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:29
#: app/templates/admin/custom_field_definitions/list.html:59
#: app/templates/admin/link_templates/list.html:30
#: app/templates/admin/link_templates/list.html:63
#: app/templates/admin/oidc_debug.html:140
#: app/templates/admin/oidc_user_detail.html:87
#: app/templates/admin/roles/list.html:96
#: app/templates/admin/salesman_email_mappings.html:44
#: app/templates/admin/salesman_email_mappings.html:217
#: app/templates/admin/webhooks/list.html:29
#: app/templates/admin/webhooks/list.html:72
#: app/templates/audit_logs/list.html:81 app/templates/audit_logs/list.html:160
#: app/templates/base.html:1454 app/templates/base.html:1482
#: app/templates/base.html:1484 app/templates/budget/dashboard.html:122
#: app/templates/client_portal/invoices.html:76
#: app/templates/client_portal/quote_detail.html:129
#: app/templates/client_portal/quotes.html:31
#: app/templates/client_portal/quotes.html:65
#: app/templates/components/ui.html:526 app/templates/contacts/list.html:32
#: app/templates/contacts/list.html:56 app/templates/deals/list.html:56
#: app/templates/deals/list.html:80 app/templates/expenses/dashboard.html:222
#: app/templates/expenses/list.html:337
#: app/templates/integrations/health.html:29
#: app/templates/integrations/view.html:114
#: app/templates/inventory/low_stock/list.html:28
#: app/templates/inventory/low_stock/list.html:44
#: app/templates/inventory/purchase_orders/list.html:56
#: app/templates/inventory/purchase_orders/list.html:90
#: app/templates/inventory/reports/low_stock.html:36
#: app/templates/inventory/reports/low_stock.html:57
#: app/templates/inventory/reservations/list.html:47
#: app/templates/inventory/reservations/list.html:100
#: app/templates/inventory/stock_items/list.html:56
#: app/templates/inventory/stock_items/list.html:94
#: app/templates/inventory/suppliers/list.html:47
#: app/templates/inventory/suppliers/list.html:81
#: app/templates/inventory/warehouses/list.html:27
#: app/templates/inventory/warehouses/list.html:54
#: app/templates/issues/list.html:100 app/templates/issues/list.html:134
#: app/templates/kanban/columns.html:55 app/templates/leads/list.html:56
#: app/templates/leads/list.html:84 app/templates/main/dashboard.html:338
#: app/templates/main/dashboard.html:367 app/templates/main/search.html:39
#: app/templates/payment_gateways/list.html:29
#: app/templates/payment_gateways/list.html:55
#: app/templates/payments/list.html:172
#: app/templates/projects/_projects_list.html:126
#: app/templates/projects/goods.html:45 app/templates/projects/goods.html:75
#: app/templates/projects/list.html:207 app/templates/projects/view.html:434
#: app/templates/projects/view.html:479
#: app/templates/quotes/_quotes_list.html:39
#: app/templates/quotes/_quotes_list.html:76 app/templates/quotes/view.html:191
#: app/templates/recurring_invoices/list.html:29
#: app/templates/recurring_invoices/list.html:59
#: app/templates/recurring_invoices/view.html:113
#: app/templates/recurring_tasks/list.html:35
#: app/templates/recurring_tasks/list.html:79
#: app/templates/reports/saved_views_list.html:32
#: app/templates/reports/saved_views_list.html:59
#: app/templates/reports/scheduled.html:31
#: app/templates/reports/scheduled.html:79
#: app/templates/tasks/_tasks_list.html:99 app/templates/tasks/view.html:79
#: app/templates/timer/_time_entries_list.html:45
#: app/templates/timer/_time_entries_list.html:177
#: app/templates/timer/calendar.html:317
msgid "Actions"
msgstr ""

#: app/templates/base.html:1462 app/templates/reports/index.html:247
#: app/templates/timer/_time_entries_list.html:201
#: app/templates/timer/_time_entries_list.html:208
#: app/templates/timer/manual_entry.html:8
#: app/templates/timer/manual_entry.html:162
msgid "Log Time"
msgstr ""

#: app/templates/base.html:1466 app/templates/tasks/my_tasks.html:20
msgid "New Task"
msgstr ""

#: app/templates/base.html:1471
msgid "New Project"
msgstr ""

#: app/templates/base.html:1475
msgid "New Client"
msgstr ""

#: app/templates/base.html:1491
msgid "Open AI Helper"
msgstr ""

#: app/templates/base.html:1502
msgid "Ask about your tracked work, summaries, gaps, and next actions."
msgstr ""

#: app/templates/base.html:1508
msgid "Context included"
msgstr ""

#: app/templates/base.html:1509
msgid "Loading context preview..."
msgstr ""

#: app/templates/base.html:1515
msgid "Ask: What did I work on this week? Draft a time entry from these notes..."
msgstr ""

#: app/templates/base.html:1518
msgid "Send"
msgstr ""

#: app/templates/base.html:2450
msgid "Amazing! You've tracked over 100 hours"
msgstr ""

#: app/templates/base.html:2451 app/templates/base.html:2454
#: app/templates/base.html:2457 app/templates/base.html:2460
msgid "Support updates and new features — or remove prompts with a key"
msgstr ""

#: app/templates/base.html:2453
msgid "Great progress! You've logged 50+ entries"
msgstr ""

#: app/templates/base.html:2456
msgid "Thanks for using TimeTracker!"
msgstr ""

#: app/templates/admin/api_tokens.html:129
msgid "Create API Token"
msgstr ""

#: app/templates/admin/api_tokens.html:356
msgid "Your API Token"
msgstr ""

#: app/templates/admin/api_tokens.html:368
msgid "Usage Examples"
msgstr ""

#: app/templates/admin/api_tokens.html:457
msgid "Are you sure you want to"
msgstr ""

#: app/templates/admin/api_tokens.html:457
msgid "deactivate"
msgstr ""

#: app/templates/admin/api_tokens.html:457
msgid "activate"
msgstr ""

#: app/templates/admin/api_tokens.html:457
msgid "this token?"
msgstr ""

#: app/templates/admin/api_tokens.html:459
msgid "Deactivate Token"
msgstr ""

#: app/templates/admin/api_tokens.html:459
msgid "Activate Token"
msgstr ""

#: app/templates/admin/api_tokens.html:460 app/templates/kanban/columns.html:98
msgid "Deactivate"
msgstr ""

#: app/templates/admin/api_tokens.html:460 app/templates/clients/view.html:35
#: app/templates/clients/view.html:37 app/templates/kanban/columns.html:98
#: app/templates/projects/view.html:61 app/templates/projects/view.html:64
msgid "Activate"
msgstr ""

#: app/templates/admin/api_tokens.html:490
msgid "Are you sure you want to delete this token? This action cannot be undone."
msgstr ""

#: app/templates/admin/api_tokens.html:492
msgid "Delete Token"
msgstr ""

#: app/templates/admin/backups.html:28
#: app/templates/import_export/index.html:185
#: app/templates/import_export/index.html:189
msgid "Create Backup"
msgstr ""

#: app/templates/admin/backups.html:47 app/templates/admin/restore.html:11
#: app/templates/import_export/index.html:114
msgid "Restore Backup"
msgstr ""

#: app/templates/admin/backups.html:61
msgid "Existing Backups"
msgstr ""

#: app/templates/admin/backups.html:124
msgid "Important Information"
msgstr ""

#: app/templates/admin/backups.html:178
msgid "Confirm Deletion"
msgstr ""

#: app/templates/admin/clear_cache.html:6
msgid "Clear Cache"
msgstr ""

#: app/templates/admin/clear_cache.html:15
msgid "ServiceWorker Status"
msgstr ""

#: app/templates/admin/clear_cache.html:23
msgid "Clear All Caches"
msgstr ""

#: app/templates/admin/clear_cache.html:35
msgid "ServiceWorker Actions"
msgstr ""

#: app/templates/admin/clear_cache.html:49
msgid "Manual Hard Refresh"
msgstr ""

#: app/templates/admin/dashboard.html:24
msgid "Total Users"
msgstr ""

#: app/templates/admin/dashboard.html:26 app/templates/admin/dashboard.html:56
#: app/templates/audit_logs/list.html:59 app/templates/reports/index.html:26
#: app/templates/reports/index.html:27
msgid "All time"
msgstr ""

#: app/templates/admin/dashboard.html:39 app/templates/admin/dashboard.html:430
#: app/templates/reports/index.html:29
msgid "Active Users"
msgstr ""

#: app/templates/admin/dashboard.html:41 app/templates/admin/dashboard.html:71
#: app/templates/reports/index.html:28 app/templates/reports/index.html:29
msgid "Currently active"
msgstr ""

#: app/templates/admin/dashboard.html:54 app/templates/clients/edit.html:176
msgid "Total Projects"
msgstr ""

#: app/templates/admin/dashboard.html:69
#: app/templates/analytics/dashboard.html:53
#: app/templates/client_portal/widgets/stats.html:6
#: app/templates/clients/edit.html:180 app/templates/reports/index.html:28
msgid "Active Projects"
msgstr ""

#: app/templates/admin/dashboard.html:84
msgid "Total Entries"
msgstr ""

#: app/templates/admin/dashboard.html:86
msgid "Time entries logged"
msgstr ""

#: app/templates/admin/dashboard.html:99
msgid "Active Timers"
msgstr ""

#: app/templates/admin/dashboard.html:101
msgid "Currently running"
msgstr ""

#: app/templates/admin/dashboard.html:116
msgid "All time tracked"
msgstr ""

#: app/templates/admin/dashboard.html:131
msgid "Billable time"
msgstr ""

#: app/templates/admin/dashboard.html:146
msgid "User Activity (30 Days)"
msgstr ""

#: app/templates/admin/dashboard.html:157
msgid "Project Status"
msgstr ""

#: app/templates/admin/dashboard.html:168
msgid "Time Entry Trends (30 Days)"
msgstr ""

#: app/templates/admin/dashboard.html:180
msgid "System Health"
msgstr ""

#: app/templates/admin/dashboard.html:189 app/templates/main/about.html:147
msgid "Database"
msgstr ""

#: app/templates/admin/dashboard.html:190
#: app/templates/admin/integrations/setup.html:191
#: app/templates/integrations/list.html:127
#: app/templates/integrations/manage.html:552
#: app/templates/integrations/view.html:31
#: app/templates/integrations/view.html:42
#: app/templates/integrations/wizard_trello.html:92
msgid "Connected"
msgstr ""

#: app/templates/admin/dashboard.html:200
msgid "OIDC Authentication"
msgstr ""

#: app/templates/admin/dashboard.html:202
msgid "Configured"
msgstr ""

#: app/templates/admin/dashboard.html:202
#: app/templates/integrations/list.html:51
msgid "Not Configured"
msgstr ""

#: app/templates/admin/dashboard.html:214
#: app/templates/admin/oidc_debug.html:128
msgid "OIDC Users"
msgstr ""

#: app/templates/admin/dashboard.html:215
#: app/templates/admin/roles/list.html:123
#: app/templates/admin/settings.html:827
msgid "users"
msgstr ""

#: app/templates/admin/dashboard.html:226
msgid "Admin Sections"
msgstr ""

#: app/templates/admin/dashboard.html:327
#: app/templates/components/activity_feed_widget.html:6
#: app/templates/main/dashboard.html:592
#: app/templates/projects/dashboard.html:242
#: app/templates/user/profile.html:131
msgid "Recent Activity"
msgstr ""

#: app/templates/admin/dashboard.html:336 app/templates/approvals/view.html:30
#: app/templates/calendar/event_detail.html:57
#: app/templates/client_portal/approvals.html:130
#: app/templates/client_portal/reports.html:221
#: app/templates/client_portal/time_entries.html:66
#: app/templates/client_portal/widgets/time_entries.html:23
#: app/templates/clients/view.html:353 app/templates/main/dashboard.html:336
#: app/templates/main/dashboard.html:361 app/templates/main/search.html:36
#: app/templates/reports/index.html:226 app/templates/reports/index.html:234
#: app/templates/reports/time_entries_report.html:105
#: app/templates/reports/time_entries_report.html:119
#: app/templates/reports/unpaid_hours_report.html:123
#: app/templates/tasks/view.html:76
#: app/templates/timer/_time_entries_list.html:40
#: app/templates/timer/_time_entries_list.html:89
#: app/templates/timer/calendar.html:876
#: app/templates/timer/time_entries_export_pdf.html:18
#: app/templates/timer/view_timer.html:41
msgid "Duration"
msgstr ""

#: app/templates/admin/dashboard.html:352
#: app/templates/client_portal/activity_feed.html:60
#: app/templates/client_portal/approvals.html:90
#: app/templates/client_portal/approvals.html:121
#: app/templates/client_portal/approvals.html:143
#: app/templates/client_portal/notifications.html:96
#: app/templates/client_portal/project_comments.html:59
#: app/templates/client_portal/quotes.html:51
#: app/templates/client_portal/reports.html:102
#: app/templates/client_portal/reports.html:230
#: app/templates/client_portal/reports.html:236
#: app/templates/client_portal/reports.html:250
#: app/templates/client_portal/time_entries.html:90
#: app/templates/client_portal/time_entries.html:101
#: app/templates/client_portal/widgets/time_entries.html:37
#: app/templates/client_portal/widgets/time_entries.html:45
#: app/templates/clients/view.html:388 app/templates/main/dashboard.html:358
#: app/templates/main/search.html:51 app/templates/timer/calendar.html:847
#: app/templates/timer/calendar.html:851 app/templates/timer/calendar.html:864
#: app/templates/timer/manual_entry.html:33 app/templates/user/profile.html:77
msgid "N/A"
msgstr ""

#: app/templates/admin/email_support.html:6
msgid "Email Configuration & Testing"
msgstr ""

#: app/templates/admin/email_support.html:7
msgid "Configure and test email delivery"
msgstr ""

#: app/templates/admin/email_support.html:11
msgid "Back to Admin"
msgstr ""

#: app/templates/admin/email_support.html:23
msgid "Configure email settings here to save them in the database."
msgstr ""

#: app/templates/admin/email_support.html:31
msgid "Enable Database Email Configuration"
msgstr ""

#: app/templates/admin/email_support.html:37
#: app/templates/admin/email_support.html:168
msgid "Mail Server"
msgstr ""

#: app/templates/admin/email_support.html:43
msgid "Mail Port"
msgstr ""

#: app/templates/admin/email_support.html:51
#: app/templates/admin/email_support.html:190
msgid "Use TLS"
msgstr ""

#: app/templates/admin/email_support.html:55
#: app/templates/admin/email_support.html:194
msgid "Use SSL"
msgstr ""

#: app/templates/admin/email_support.html:61
#: app/templates/admin/email_support.html:176
#: app/templates/admin/oidc_debug.html:134
#: app/templates/admin/oidc_user_detail.html:23
#: app/templates/auth/login.html:51 app/templates/auth/login.html:57
#: app/templates/client_portal/login.html:48
#: app/templates/client_portal/set_password.html:42
#: app/templates/integrations/caldav_setup.html:77
#: app/templates/integrations/manage.html:235
#: app/templates/kiosk/login.html:116 app/templates/user/settings.html:49
msgid "Username"
msgstr ""

#: app/templates/admin/email_support.html:68 app/templates/auth/login.html:52
#: app/templates/auth/login.html:64 app/templates/auth/login.html:67
#: app/templates/client_portal/login.html:54
#: app/templates/client_portal/set_password.html:50
#: app/templates/integrations/caldav_setup.html:93
#: app/templates/integrations/manage.html:251
#: app/templates/kiosk/login.html:136 app/templates/kiosk/login.html:146
msgid "Password"
msgstr ""

#: app/templates/admin/email_support.html:71
msgid "Leave empty to keep current"
msgstr ""

#: app/templates/admin/email_support.html:76
#: app/templates/admin/email_support.html:198
msgid "Default Sender"
msgstr ""

#: app/templates/admin/email_support.html:82
msgid "Test recipient email"
msgstr ""

#: app/templates/admin/email_support.html:84
msgid "Used to prefill “Send Test Email” and invoice template test sends."
msgstr ""

#: app/templates/admin/email_support.html:91
#: app/templates/admin/email_support.html:376
#: app/templates/integrations/activitywatch_setup.html:145
#: app/templates/integrations/caldav_setup.html:199
#: app/templates/integrations/manage.html:520
msgid "Save Configuration"
msgstr ""

#: app/templates/admin/email_support.html:94
#: app/templates/admin/pdf_layout.html:1715
#: app/templates/admin/pdf_layout.html:7735
#: app/templates/admin/quote_pdf_layout.html:1525
#: app/templates/admin/quote_pdf_layout.html:7175
#: app/templates/components/ui.html:838
#: app/templates/integrations/health.html:107
#: app/templates/integrations/view.html:150
#: app/templates/projects/time_entries_overview.html:40
#: app/templates/settings/keyboard_shortcuts.html:484
#: app/templates/timer/bulk_entry.html:90
msgid "Reset"
msgstr ""

#: app/templates/admin/email_support.html:106
msgid "Email Configuration Status"
msgstr ""

#: app/templates/admin/email_support.html:108
#: app/templates/analytics/dashboard.html:20
#: app/templates/analytics/dashboard_improved.html:22
#: app/templates/budget/dashboard.html:18
#: app/templates/components/persistent_chat_widget.html:34
#: app/templates/gantt/view.html:46
msgid "Refresh"
msgstr ""

#: app/templates/admin/email_support.html:118
msgid "Email is configured!"
msgstr ""

#: app/templates/admin/email_support.html:119
msgid "Your email settings are properly set up."
msgstr ""

#: app/templates/admin/email_support.html:128
msgid "Email is not configured"
msgstr ""

#: app/templates/admin/email_support.html:129
msgid "Please configure email settings using the form above."
msgstr ""

#: app/templates/admin/email_support.html:139
msgid "Configuration Errors"
msgstr ""

#: app/templates/admin/email_support.html:153
msgid "Configuration Warnings"
msgstr ""

#: app/templates/admin/email_support.html:165
msgid "Current Email Settings"
msgstr ""

#: app/templates/admin/email_support.html:172
#: app/templates/admin/ldap_setup_wizard.html:66
#: app/templates/admin/settings.html:416
msgid "Port"
msgstr ""

#: app/templates/admin/email_support.html:180
msgid "Password Set"
msgstr ""

#: app/templates/admin/email_support.html:208
#: app/templates/admin/email_support.html:225
#: app/templates/admin/email_support.html:475
msgid "Send Test Email"
msgstr ""

#: app/templates/admin/email_support.html:213
msgid "Recipient Email Address"
msgstr ""

#: app/templates/admin/email_support.html:235
msgid "Configuration Guide"
msgstr ""

#: app/templates/admin/email_support.html:238
msgid "Common SMTP Providers"
msgstr ""

#: app/templates/admin/email_support.html:240
msgid "Requires app password"
msgstr ""

#: app/templates/admin/email_support.html:249
msgid "Important Notes"
msgstr ""

#: app/templates/admin/email_support.html:252
msgid "Gmail requires an App Password if 2FA is enabled"
msgstr ""

#: app/templates/admin/email_support.html:253
msgid "Restart the application after changing email settings"
msgstr ""

#: app/templates/admin/email_support.html:254
msgid "Check firewall rules if emails are not sending"
msgstr ""

#: app/templates/admin/email_support.html:255
msgid "For production, use a dedicated email service like SendGrid or Amazon SES"
msgstr ""

#: app/templates/admin/email_support.html:307
msgid "password is set"
msgstr ""

#: app/templates/admin/email_support.html:310
msgid "no password set"
msgstr ""

#: app/templates/admin/email_support.html:372
msgid "Failed to save configuration. Please try again."
msgstr ""

#: app/templates/admin/email_support.html:390
#: app/templates/admin/email_support.html:489
msgid "Success!"
msgstr ""

#: app/templates/admin/email_support.html:428
msgid "Failed to refresh status. Please try again."
msgstr ""

#: app/templates/admin/email_support.html:443
msgid "Please enter a valid email address"
msgstr ""

#: app/templates/admin/email_support.html:449
msgid "Sending..."
msgstr ""

#: app/templates/admin/email_support.html:471
msgid "Failed to send test email. Please check your configuration."
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:4
#: app/templates/admin/ldap_setup_wizard.html:10
#: app/templates/admin/ldap_setup_wizard.html:15
msgid "LDAP Setup Wizard"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:16
msgid "Guided configuration for LDAP authentication (environment variables)"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:31
msgid "Server"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:36
msgid "Bind"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:41
#: app/templates/admin/roles/list.html:94
#: app/templates/components/activity_feed_widget.html:47
msgid "Users"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:46
msgid "Groups"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:51
#: app/templates/admin/oidc_setup_wizard.html:46
msgid "Finalize"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:57
msgid "Step 1: Server and TLS"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:60
msgid "LDAP host"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:73
msgid "Use SSL (LDAPS)"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:77
msgid "StartTLS"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:81
msgid "Connection timeout (seconds)"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:86
msgid "TLS CA certificate file"
msgstr ""

#: app/templates/admin/email_templates/edit.html:27
#: app/templates/admin/email_templates/view.html:29
#: app/templates/admin/integrations/setup.html:100
#: app/templates/admin/ldap_setup_wizard.html:86
#: app/templates/admin/ldap_setup_wizard.html:127
#: app/templates/admin/ldap_setup_wizard.html:167
#: app/templates/admin/ldap_setup_wizard.html:179
#: app/templates/admin/ldap_setup_wizard.html:185
#: app/templates/admin/oidc_setup_wizard.html:193
#: app/templates/admin/oidc_setup_wizard.html:206
#: app/templates/admin/oidc_setup_wizard.html:251
#: app/templates/admin/salesman_email_mappings.html:124
#: app/templates/integrations/activitywatch_setup.html:51
#: app/templates/integrations/activitywatch_setup.html:100
#: app/templates/integrations/caldav_setup.html:60
#: app/templates/integrations/caldav_setup.html:130
#: app/templates/integrations/manage.html:151
#: app/templates/integrations/wizard_asana.html:65
#: app/templates/integrations/wizard_github.html:50
#: app/templates/integrations/wizard_github.html:144
#: app/templates/integrations/wizard_gitlab.html:81
#: app/templates/integrations/wizard_gitlab.html:199
#: app/templates/integrations/wizard_jira.html:86
#: app/templates/integrations/wizard_microsoft_teams.html:18
#: app/templates/integrations/wizard_outlook_calendar.html:18
#: app/templates/integrations/wizard_quickbooks.html:145
#: app/templates/integrations/wizard_xero.html:128
#: app/templates/setup/initial_setup.html:152
#: app/templates/setup/initial_setup.html:156
#: app/templates/setup/initial_setup.html:202
msgid "optional"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:95
msgid "Step 2: Service bind account"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:98
msgid "Bind DN"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:104
msgid "Bind password"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:107
msgid "Enter bind password"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:110
msgid "A bind password is already set in the environment. Enter it again here to test or generate configuration."
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:118
msgid "Step 3: User directory and attributes"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:121
#: app/templates/admin/settings.html:425
msgid "Base DN"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:127
msgid "User subtree (relative to base)"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:133
msgid "User object class"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:140
msgid "Login attribute"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:145
msgid "Email attribute"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:150
msgid "First name attribute"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:155
msgid "Last name attribute"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:164
msgid "Step 4: Groups and authentication mode"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:167
msgid "Group subtree (relative to base)"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:173
msgid "Group object class"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:179
#: app/templates/admin/settings.html:437
msgid "Admin group (CN)"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:185
#: app/templates/admin/settings.html:441
msgid "Required group (CN)"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:190
msgid "AUTH_METHOD"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:193
msgid "LDAP only"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:194
msgid "All (local + OIDC + LDAP)"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:197
msgid "Use \"All\" only if you also configure local and OIDC sign-in; AUTH_METHOD=all enables every method."
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:204
msgid "Step 5: Test and generate configuration"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:209
msgid "Test the service bind and user search, then generate .env snippets to copy into your deployment."
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:214
msgid "Test connection"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:221
msgid "Generate environment variable lines for your .env file or Docker Compose."
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:225
msgid "Generate configuration"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:230
msgid "Environment variables (.env)"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:233
#: app/templates/admin/ldap_setup_wizard.html:242
#: app/templates/admin/oidc_setup_wizard.html:283
#: app/templates/admin/oidc_setup_wizard.html:292
#: app/templates/admin/settings.html:180
msgid "Copy"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:239
#: app/templates/admin/oidc_setup_wizard.html:289
msgid "Docker Compose"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:250
msgid "Add these variables to your environment or Compose file, restart the application, then confirm under Settings → LDAP."
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:258
#: app/templates/admin/oidc_setup_wizard.html:309
#: app/templates/components/ui.html:85
#: app/templates/integrations/wizard_base.html:48
#: app/templates/issues/list.html:152 app/templates/main/search.html:95
#: app/templates/project_templates/list.html:100
#: app/templates/reports/time_entries_report.html:148
#: app/templates/tasks/my_tasks.html:358
#: app/templates/timer/_time_entries_list.html:229
msgid "Previous"
msgstr ""

#: app/templates/admin/ldap_setup_wizard.html:262
#: app/templates/admin/oidc_setup_wizard.html:313
#: app/templates/components/ui.html:99
#: app/templates/integrations/wizard_base.html:52
#: app/templates/issues/list.html:159 app/templates/main/search.html:105
#: app/templates/project_templates/list.html:108
#: app/templates/reports/time_entries_report.html:151
#: app/templates/setup/initial_setup.html:285
#: app/templates/tasks/my_tasks.html:384
#: app/templates/timer/_time_entries_list.html:247
msgid "Next"
msgstr ""

#: app/templates/admin/modules.html:39
msgid "Feature Module Load Status"
msgstr ""

#: app/templates/admin/modules.html:41
msgid "This reflects which optional feature modules successfully loaded when the server started."
msgstr ""

#: app/templates/admin/modules.html:45
msgid "Optional loaded:"
msgstr ""

#: app/templates/admin/modules.html:47
msgid "Attention needed"
msgstr ""

#: app/templates/admin/modules.html:56
msgid "Module"
msgstr ""

#: app/templates/admin/modules.html:57
msgid "Blueprint"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:28
#: app/templates/admin/custom_field_definitions/list.html:52
#: app/templates/admin/link_templates/list.html:29
#: app/templates/admin/link_templates/list.html:56
#: app/templates/admin/modules.html:58 app/templates/admin/oidc_debug.html:29
#: app/templates/admin/oidc_user_detail.html:27
#: app/templates/admin/pdf_layout.html:1828
#: app/templates/admin/quote_pdf_layout.html:1638
#: app/templates/admin/salesman_email_mappings.html:41
#: app/templates/admin/salesman_email_mappings.html:212
#: app/templates/admin/webhooks/list.html:27
#: app/templates/admin/webhooks/list.html:58
#: app/templates/admin/webhooks/view.html:32
#: app/templates/admin/webhooks/view.html:102
#: app/templates/admin/webhooks/view.html:112
#: app/templates/approvals/list.html:99 app/templates/approvals/view.html:74
#: app/templates/budget/dashboard.html:121
#: app/templates/budget/project_detail.html:70
#: app/templates/client_portal/invoice_detail.html:36
#: app/templates/client_portal/invoices.html:75
#: app/templates/client_portal/issue_detail.html:39
#: app/templates/client_portal/quote_detail.html:39
#: app/templates/client_portal/quotes.html:30
#: app/templates/client_portal/quotes.html:55
#: app/templates/client_portal/reports.html:90
#: app/templates/contacts/communication_form.html:57
#: app/templates/deals/activity_form.html:34 app/templates/deals/list.html:22
#: app/templates/deals/view.html:53 app/templates/expenses/dashboard.html:203
#: app/templates/expenses/list.html:316 app/templates/integrations/view.html:20
#: app/templates/integrations/wizard_trello.html:71
#: app/templates/inventory/purchase_orders/list.html:21
#: app/templates/inventory/purchase_orders/list.html:54
#: app/templates/inventory/purchase_orders/list.html:74
#: app/templates/inventory/purchase_orders/view.html:34
#: app/templates/inventory/reports/turnover.html:49
#: app/templates/inventory/reports/turnover.html:64
#: app/templates/inventory/reservations/list.html:20
#: app/templates/inventory/reservations/list.html:44
#: app/templates/inventory/reservations/list.html:78
#: app/templates/inventory/stock_items/list.html:55
#: app/templates/inventory/stock_items/list.html:87
#: app/templates/inventory/stock_items/view.html:100
#: app/templates/inventory/stock_items/view.html:181
#: app/templates/inventory/stock_items/view.html:202
#: app/templates/inventory/stock_levels/warehouse.html:52
#: app/templates/inventory/stock_levels/warehouse.html:71
#: app/templates/inventory/suppliers/list.html:25
#: app/templates/inventory/suppliers/list.html:46
#: app/templates/inventory/suppliers/list.html:74
#: app/templates/inventory/suppliers/view.html:30
#: app/templates/inventory/warehouses/list.html:26
#: app/templates/inventory/warehouses/list.html:47
#: app/templates/inventory/warehouses/view.html:30
#: app/templates/invoices/edit.html:309
#: app/templates/invoices/pdf_default.html:59 app/templates/issues/edit.html:37
#: app/templates/issues/list.html:36 app/templates/issues/list.html:96
#: app/templates/issues/list.html:113 app/templates/issues/view.html:95
#: app/templates/kanban/columns.html:52
#: app/templates/leads/activity_form.html:34 app/templates/leads/form.html:60
#: app/templates/leads/list.html:26 app/templates/leads/list.html:53
#: app/templates/leads/list.html:73 app/templates/leads/view.html:81
#: app/templates/main/help.html:198 app/templates/mileage/gps.html:44
#: app/templates/payment_gateways/list.html:27
#: app/templates/payment_gateways/list.html:41
#: app/templates/payments/list.html:159
#: app/templates/projects/_kanban_tailwind.html:30
#: app/templates/projects/_projects_list.html:86
#: app/templates/projects/goods.html:44 app/templates/projects/goods.html:66
#: app/templates/projects/list.html:167 app/templates/projects/view.html:275
#: app/templates/projects/view.html:430 app/templates/projects/view.html:449
#: app/templates/quotes/_quotes_list.html:37
#: app/templates/quotes/_quotes_list.html:60 app/templates/quotes/list.html:78
#: app/templates/quotes/pdf_default.html:61 app/templates/quotes/view.html:68
#: app/templates/recurring_invoices/list.html:28
#: app/templates/recurring_invoices/list.html:52
#: app/templates/recurring_invoices/view.html:110
#: app/templates/recurring_tasks/list.html:34
#: app/templates/recurring_tasks/list.html:71
#: app/templates/reports/scheduled.html:30
#: app/templates/reports/scheduled.html:68
#: app/templates/tasks/_kanban.html:1227
#: app/templates/tasks/_tasks_list.html:68 app/templates/tasks/edit.html:78
#: app/templates/tasks/my_tasks.html:128
#: app/templates/timer/_time_entries_list.html:44
#: app/templates/timer/_time_entries_list.html:161
#: app/templates/timer/calendar.html:857
#: app/templates/timer/time_entries_overview.html:196
#: app/templates/weekly_goals/edit.html:83
#: app/templates/weekly_goals/view.html:55
#: app/templates/workforce/dashboard.html:64
#: app/templates/workforce/dashboard.html:175 app/utils/pdf_generator.py:1129
msgid "Status"
msgstr ""

#: app/templates/admin/modules.html:59 app/templates/admin/oidc_debug.html:157
#: app/templates/admin/webhooks/view.html:25
#: app/templates/budget/dashboard.html:172
#: app/templates/client_portal/error.html:32
#: app/templates/client_portal/issue_detail.html:36
#: app/templates/integrations/view.html:96 app/templates/issues/view.html:92
#: app/templates/projects/view.html:234
#: app/templates/timer/manual_entry.html:136
msgid "Details"
msgstr ""

#: app/templates/admin/modules.html:70
msgid "Loaded"
msgstr ""

#: app/templates/admin/modules.html:74
#: app/templates/admin/webhooks/list.html:69
#: app/templates/admin/webhooks/view.html:80
#: app/templates/admin/webhooks/view.html:116
#: app/templates/weekly_goals/edit.html:90
#: app/templates/weekly_goals/index.html:51
#: app/templates/weekly_goals/index.html:180
#: app/templates/weekly_goals/view.html:71 app/utils/i18n_helpers.py:223
#: app/utils/i18n_helpers.py:235 app/utils/i18n_helpers.py:246
#: app/utils/i18n_helpers.py:257
msgid "Failed"
msgstr ""

#: app/templates/admin/modules.html:82 app/templates/main/dashboard.html:290
msgid "—"
msgstr ""

#: app/templates/admin/modules.html:101
msgid "Client Lock (optional)"
msgstr ""

#: app/templates/admin/modules.html:103
msgid "If set, all client selectors across the app will auto-select this client and prevent changes."
msgstr ""

#: app/templates/admin/modules.html:106
msgid "Locked Client"
msgstr ""

#: app/templates/admin/modules.html:108
msgid "None (no lock)"
msgstr ""

#: app/templates/admin/modules.html:120
msgid "Module Visibility"
msgstr ""

#: app/templates/admin/modules.html:122
msgid "Disable modules to hide them from all users. Disabled modules will not appear in the sidebar. Core modules (Dashboard, Projects, Timer, etc.) are always enabled and cannot be disabled."
msgstr ""

#: app/templates/admin/modules.html:127 app/templates/admin/modules.html:229
msgid "Enable All"
msgstr ""

#: app/templates/admin/modules.html:130 app/templates/admin/modules.html:233
msgid "Disable All"
msgstr ""

#: app/templates/admin/modules.html:148
msgid "Total Modules:"
msgstr ""

#: app/templates/admin/modules.html:152
msgid "Enabled:"
msgstr ""

#: app/templates/admin/modules.html:156
msgid "Disabled:"
msgstr ""

#: app/templates/admin/modules.html:165
msgid "Search modules..."
msgstr ""

#: app/templates/admin/modules.html:169
#: app/templates/inventory/reports/valuation.html:32
#: app/templates/inventory/stock_items/list.html:27
#: app/templates/inventory/stock_levels/list.html:31
#: app/templates/inventory/stock_levels/warehouse.html:23
#: app/templates/project_templates/list.html:24
msgid "All Categories"
msgstr ""

#: app/templates/admin/modules.html:173 app/templates/admin/modules.html:215
#: app/templates/main/about.html:32 app/templates/main/help.html:28
#: app/templates/main/help.html:190
msgid "Project Management"
msgstr ""

#: app/templates/admin/modules.html:186
msgid "Show disabled only"
msgstr ""

#: app/templates/admin/modules.html:190
msgid "Show with dependencies"
msgstr ""

#: app/templates/admin/modules.html:200
msgid "Warning: Disabling these modules will also affect dependent modules:"
msgstr ""

#: app/templates/admin/modules.html:263 app/templates/admin/oidc_debug.html:32
#: app/templates/admin/settings.html:525
#: app/templates/integrations/list.html:47
#: app/templates/integrations/list.html:87
msgid "Enabled"
msgstr ""

#: app/templates/admin/modules.html:265 app/templates/admin/oidc_debug.html:34
#: app/templates/admin/settings.html:526
msgid "Disabled"
msgstr ""

#: app/templates/admin/modules.html:274
msgid "Depends on:"
msgstr ""

#: app/templates/admin/modules.html:301
msgid "Disabling \"Reports\" hides the whole Reports submenu including Report Builder and Scheduled Reports."
msgstr ""

#: app/templates/admin/modules.html:305 app/templates/auth/edit_profile.html:81
#: app/templates/client_notes/edit.html:86 app/templates/comments/edit.html:80
#: app/templates/invoices/edit.html:287 app/templates/issues/edit.html:83
#: app/templates/kanban/edit_column.html:91
#: app/templates/projects/edit.html:129
#: app/templates/projects/edit_good.html:69
#: app/templates/timer/edit_timer.html:393
#: app/templates/timer/edit_timer.html:514
#: app/templates/weekly_goals/edit.html:122
msgid "Save Changes"
msgstr ""

#: app/templates/admin/modules.html:310
msgid "No modules available."
msgstr ""

#: app/templates/admin/modules.html:320
#: app/templates/contacts/communication_form.html:33
#: app/templates/deals/activity_form.html:27
#: app/templates/leads/activity_form.html:27
msgid "Note"
msgstr ""

#: app/templates/admin/modules.html:322
msgid "All modules are enabled by default."
msgstr ""

#: app/templates/admin/modules.html:323
msgid "Core modules cannot be disabled as they are required for the application to function."
msgstr ""

#: app/templates/admin/modules.html:324
msgid "Disabling a module affects all users system-wide. Disabled modules will not appear in the navigation sidebar."
msgstr ""

#: app/templates/admin/modules.html:538
msgid "Enable all modules?"
msgstr ""

#: app/templates/admin/modules.html:547
msgid "Disable all modules? This may affect functionality."
msgstr ""

#: app/templates/admin/modules.html:573
msgid "Disable"
msgstr ""

#: app/templates/admin/modules.html:573
msgid "module(s) in this category?"
msgstr ""

#: app/templates/admin/modules.html:618
msgid "Validation errors:"
msgstr ""

#: app/templates/admin/oidc_debug.html:4 app/templates/admin/oidc_debug.html:14
msgid "OIDC Debug Dashboard"
msgstr ""

#: app/templates/admin/oidc_debug.html:15
msgid "Inspect configuration, provider metadata and OIDC users"
msgstr ""

#: app/templates/admin/oidc_debug.html:17
#: app/templates/admin/oidc_setup_wizard.html:10
#: app/templates/integrations/list.html:58
#: app/templates/integrations/list.html:98
#: app/templates/integrations/list.html:155
#: app/templates/integrations/wizard_base.html:10
msgid "Setup Wizard"
msgstr ""

#: app/templates/admin/oidc_debug.html:17
msgid "Test Configuration"
msgstr ""

#: app/templates/admin/oidc_debug.html:25
msgid "OIDC Configuration"
msgstr ""

#: app/templates/admin/oidc_debug.html:39
msgid "Auth Method"
msgstr ""

#: app/templates/admin/oidc_debug.html:43
msgid "Issuer"
msgstr ""

#: app/templates/admin/oidc_debug.html:44
#: app/templates/admin/oidc_debug.html:48
#: app/templates/admin/oidc_debug.html:73
#: app/templates/admin/oidc_debug.html:74
#: app/templates/integrations/health.html:86
#: app/templates/integrations/list.html:91
msgid "Not configured"
msgstr ""

#: app/templates/admin/oidc_debug.html:47
#: app/templates/admin/oidc_setup_wizard.html:70
#: app/templates/payment_gateways/create.html:60
msgid "Client ID"
msgstr ""

#: app/templates/admin/oidc_debug.html:51
#: app/templates/admin/oidc_setup_wizard.html:83
#: app/templates/payment_gateways/create.html:64
msgid "Client Secret"
msgstr ""

#: app/templates/admin/oidc_debug.html:52
msgid "Set"
msgstr ""

#: app/templates/admin/oidc_debug.html:52
#: app/templates/admin/oidc_user_detail.html:39
#: app/templates/admin/oidc_user_detail.html:40
#: app/templates/integrations/wizard_asana.html:191
#: app/templates/integrations/wizard_jira.html:255
#: app/templates/integrations/wizard_quickbooks.html:224
#: app/templates/integrations/wizard_xero.html:207
msgid "Not set"
msgstr ""

#: app/templates/admin/oidc_debug.html:55
#: app/templates/admin/oidc_setup_wizard.html:238
msgid "Redirect URI"
msgstr ""

#: app/templates/admin/oidc_debug.html:56
#: app/templates/admin/oidc_debug.html:75
msgid "Auto-generated"
msgstr ""

#: app/templates/admin/oidc_debug.html:59
#: app/templates/admin/oidc_debug.html:109
#: app/templates/admin/oidc_setup_wizard.html:225
msgid "Scopes"
msgstr ""

#: app/templates/admin/oidc_debug.html:67
msgid "Claim Mapping"
msgstr ""

#: app/templates/admin/oidc_debug.html:69
#: app/templates/admin/oidc_setup_wizard.html:141
msgid "Username Claim"
msgstr ""

#: app/templates/admin/oidc_debug.html:70
#: app/templates/admin/oidc_setup_wizard.html:154
msgid "Email Claim"
msgstr ""

#: app/templates/admin/oidc_debug.html:71
#: app/templates/admin/oidc_setup_wizard.html:167
msgid "Full Name Claim"
msgstr ""

#: app/templates/admin/oidc_debug.html:72
#: app/templates/admin/oidc_setup_wizard.html:180
msgid "Groups Claim"
msgstr ""

#: app/templates/admin/oidc_debug.html:73
#: app/templates/admin/oidc_setup_wizard.html:193
msgid "Admin Group"
msgstr ""

#: app/templates/admin/oidc_debug.html:74
#: app/templates/admin/oidc_setup_wizard.html:206
msgid "Admin Emails"
msgstr ""

#: app/templates/admin/oidc_debug.html:75
msgid "Post-Logout URI"
msgstr ""

#: app/templates/admin/oidc_debug.html:83
#: app/templates/admin/oidc_setup_wizard.html:128
msgid "Provider Metadata"
msgstr ""

#: app/templates/admin/oidc_debug.html:86
msgid "Error loading metadata:"
msgstr ""

#: app/templates/admin/oidc_debug.html:89
#: app/templates/admin/oidc_debug.html:118
msgid "Discovery endpoint:"
msgstr ""

#: app/templates/admin/oidc_debug.html:93
msgid "Successfully loaded provider metadata"
msgstr ""

#: app/templates/admin/oidc_debug.html:97
msgid "Endpoints"
msgstr ""

#: app/templates/admin/oidc_debug.html:99
msgid "Authorization"
msgstr ""

#: app/templates/admin/oidc_debug.html:100
msgid "Token"
msgstr ""

#: app/templates/admin/oidc_debug.html:101
msgid "UserInfo"
msgstr ""

#: app/templates/admin/oidc_debug.html:102
msgid "End Session"
msgstr ""

#: app/templates/admin/oidc_debug.html:103
msgid "JWKS URI"
msgstr ""

#: app/templates/admin/oidc_debug.html:107
msgid "Supported Features"
msgstr ""

#: app/templates/admin/oidc_debug.html:110
msgid "Response Types"
msgstr ""

#: app/templates/admin/oidc_debug.html:111
msgid "Grant Types"
msgstr ""

#: app/templates/admin/oidc_debug.html:112
msgid "Auth Methods"
msgstr ""

#: app/templates/admin/oidc_debug.html:113
#: app/templates/admin/oidc_setup_wizard.html:36
msgid "Claims"
msgstr ""

#: app/templates/admin/oidc_debug.html:121
msgid "Provider metadata not loaded. Click \"Test Configuration\" to fetch."
msgstr ""

#: app/templates/admin/oidc_debug.html:135
#: app/templates/admin/oidc_user_detail.html:24
#: app/templates/admin/pdf_layout.html:1796
#: app/templates/admin/quote_pdf_layout.html:1606
#: app/templates/clients/create.html:47 app/templates/clients/edit.html:54
#: app/templates/contacts/communication_form.html:30
#: app/templates/contacts/form.html:37 app/templates/contacts/list.html:29
#: app/templates/contacts/list.html:47 app/templates/contacts/view.html:33
#: app/templates/deals/activity_form.html:29
#: app/templates/inventory/suppliers/form.html:40
#: app/templates/inventory/suppliers/list.html:44
#: app/templates/inventory/suppliers/list.html:60
#: app/templates/inventory/suppliers/view.html:53
#: app/templates/invoices/pdf_default.html:45
#: app/templates/leads/activity_form.html:29 app/templates/leads/form.html:40
#: app/templates/leads/list.html:52 app/templates/leads/list.html:66
#: app/templates/leads/view.html:49 app/templates/projects/create.html:292
#: app/templates/quotes/pdf_default.html:45
#: app/templates/setup/initial_setup.html:147 app/utils/pdf_generator.py:1117
msgid "Email"
msgstr ""

#: app/templates/admin/oidc_debug.html:136
#: app/templates/admin/oidc_user_detail.html:25
#: app/templates/user/settings.html:58
msgid "Full Name"
msgstr ""

#: app/templates/admin/oidc_debug.html:137
#: app/templates/admin/oidc_user_detail.html:26
#: app/templates/contacts/form.html:62 app/templates/contacts/list.html:31
#: app/templates/contacts/list.html:55 app/templates/contacts/view.html:59
msgid "Role"
msgstr ""

#: app/templates/admin/oidc_debug.html:138
#: app/templates/admin/oidc_user_detail.html:31
#: app/templates/auth/profile.html:58
msgid "Last Login"
msgstr ""

#: app/templates/admin/oidc_debug.html:139
msgid "OIDC Subject"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:56
#: app/templates/admin/link_templates/list.html:60
#: app/templates/admin/oidc_debug.html:148
#: app/templates/admin/oidc_user_detail.html:27
#: app/templates/admin/webhooks/list.html:62
#: app/templates/admin/webhooks/view.html:37
#: app/templates/calendar/integrations.html:40
#: app/templates/clients/view.html:321 app/templates/integrations/view.html:25
#: app/templates/inventory/stock_items/list.html:91
#: app/templates/inventory/stock_items/view.html:105
#: app/templates/inventory/suppliers/list.html:78
#: app/templates/inventory/suppliers/view.html:35
#: app/templates/inventory/warehouses/list.html:51
#: app/templates/inventory/warehouses/view.html:35
#: app/templates/kanban/columns.html:74
#: app/templates/payment_gateways/list.html:45
#: app/templates/projects/view.html:121
#: app/templates/recurring_tasks/list.html:76
#: app/templates/reports/scheduled.html:76
#: app/templates/timer/calendar.html:975 app/utils/i18n_helpers.py:51
#: app/utils/i18n_helpers.py:57 app/utils/i18n_helpers.py:287
#: app/utils/i18n_helpers.py:293
msgid "Inactive"
msgstr ""

#: app/templates/admin/oidc_debug.html:153
#: app/templates/admin/oidc_user_detail.html:31
#: app/templates/integrations/manage.html:604
msgid "Never"
msgstr ""

#: app/templates/admin/oidc_debug.html:166
msgid "No users have logged in via OIDC yet."
msgstr ""

#: app/templates/admin/oidc_debug.html:172
msgid "Environment Variables Reference"
msgstr ""

#: app/templates/admin/oidc_debug.html:173
msgid "Configure OIDC using these environment variables:"
msgstr ""

#: app/templates/admin/oidc_debug.html:178
msgid "Variable"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:36
#: app/templates/admin/link_templates/form.html:30
#: app/templates/admin/oidc_debug.html:179
#: app/templates/admin/roles/form.html:47
#: app/templates/admin/roles/list.html:92
#: app/templates/admin/webhooks/form.html:29
#: app/templates/calendar/event_detail.html:66
#: app/templates/calendar/event_form.html:30 app/templates/chat/index.html:111
#: app/templates/client_portal/approvals.html:151
#: app/templates/client_portal/invoice_detail.html:57
#: app/templates/client_portal/invoice_detail.html:66
#: app/templates/client_portal/issue_detail.html:23
#: app/templates/client_portal/new_issue.html:33
#: app/templates/client_portal/quote_detail.html:57
#: app/templates/client_portal/quote_detail.html:69
#: app/templates/client_portal/quote_detail.html:78
#: app/templates/client_portal/time_entries.html:67
#: app/templates/client_portal/widgets/time_entries.html:24
#: app/templates/clients/create.html:32 app/templates/clients/create.html:136
#: app/templates/clients/edit.html:31 app/templates/deals/activity_form.html:54
#: app/templates/deals/form.html:97 app/templates/deals/view.html:105
#: app/templates/inventory/purchase_orders/form.html:78
#: app/templates/inventory/purchase_orders/form.html:147
#: app/templates/inventory/purchase_orders/view.html:91
#: app/templates/inventory/purchase_orders/view.html:110
#: app/templates/inventory/stock_items/form.html:31
#: app/templates/inventory/stock_items/view.html:45
#: app/templates/inventory/suppliers/form.html:32
#: app/templates/inventory/suppliers/view.html:41
#: app/templates/invoices/edit.html:74 app/templates/invoices/edit.html:161
#: app/templates/invoices/edit.html:176 app/templates/invoices/edit.html:233
#: app/templates/invoices/edit.html:248 app/templates/invoices/edit.html:608
#: app/templates/invoices/pdf_default.html:88 app/templates/issues/edit.html:30
#: app/templates/issues/new.html:30 app/templates/issues/view.html:31
#: app/templates/leads/activity_form.html:54
#: app/templates/leads/convert_to_deal.html:54 app/templates/main/help.html:197
#: app/templates/project_templates/create.html:25
#: app/templates/project_templates/edit.html:25
#: app/templates/project_templates/view.html:30
#: app/templates/projects/add_cost.html:28
#: app/templates/projects/add_good.html:24
#: app/templates/projects/create.html:52 app/templates/projects/create.html:283
#: app/templates/projects/edit.html:48 app/templates/projects/edit_cost.html:35
#: app/templates/projects/edit_good.html:24
#: app/templates/projects/time_entries_overview.html:72
#: app/templates/projects/time_entries_overview.html:83
#: app/templates/quotes/_edit_quote_form_scripts.html:199
#: app/templates/quotes/_edit_quote_form_scripts.html:233
#: app/templates/quotes/create.html:41 app/templates/quotes/create.html:64
#: app/templates/quotes/create.html:95 app/templates/quotes/create.html:126
#: app/templates/quotes/edit.html:46 app/templates/quotes/edit.html:69
#: app/templates/quotes/edit.html:143 app/templates/quotes/edit.html:158
#: app/templates/quotes/edit.html:200 app/templates/quotes/edit.html:216
#: app/templates/quotes/pdf_default.html:95 app/templates/quotes/view.html:61
#: app/templates/quotes/view.html:102
#: app/templates/recurring_tasks/form.html:47
#: app/templates/tasks/_kanban.html:1253 app/templates/tasks/create.html:34
#: app/templates/tasks/edit.html:41 app/utils/pdf_generator.py:1154
#: app/utils/pdf_generator_fallback.py:240
#: app/utils/pdf_generator_fallback.py:575
msgid "Description"
msgstr ""

#: app/templates/admin/oidc_debug.html:180 app/templates/user/settings.html:297
msgid "Example"
msgstr ""

#: app/templates/admin/oidc_debug.html:184
msgid "Authentication method"
msgstr ""

#: app/templates/admin/oidc_debug.html:185
msgid "OIDC provider issuer URL"
msgstr ""

#: app/templates/admin/oidc_debug.html:186
msgid "Client ID from OIDC provider"
msgstr ""

#: app/templates/admin/oidc_debug.html:187
msgid "Client secret from OIDC provider"
msgstr ""

#: app/templates/admin/oidc_debug.html:188
msgid "Callback URL (optional, auto-generated)"
msgstr ""

#: app/templates/admin/oidc_debug.html:189
msgid "Requested scopes"
msgstr ""

#: app/templates/admin/oidc_debug.html:190
msgid "Claim containing username"
msgstr ""

#: app/templates/admin/oidc_debug.html:191
msgid "Claim containing email"
msgstr ""

#: app/templates/admin/oidc_debug.html:192
msgid "Claim containing full name"
msgstr ""

#: app/templates/admin/oidc_debug.html:193
msgid "Claim containing groups"
msgstr ""

#: app/templates/admin/oidc_debug.html:194
msgid "Group name for admin role (optional)"
msgstr ""

#: app/templates/admin/oidc_debug.html:195
msgid "Comma-separated admin emails (optional)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:4
#: app/templates/admin/oidc_setup_wizard.html:15
msgid "OIDC Setup Wizard"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:16
msgid "Guided step-by-step configuration for OpenID Connect authentication"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:26
msgid "Basic Config"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:31
#: app/templates/admin/oidc_setup_wizard.html:125
#: app/templates/integrations/activitywatch_setup.html:161
#: app/templates/integrations/caldav_setup.html:210
#: app/templates/integrations/caldav_setup.html:215
#: app/templates/integrations/manage.html:624
#: app/templates/integrations/view.html:137
#: app/templates/integrations/wizard_jira.html:76
#: app/templates/integrations/wizard_trello.html:53
msgid "Test Connection"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:53
msgid "Step 1: Basic Configuration"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:57
msgid "OIDC Issuer URL"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:64
msgid "The base URL of your OIDC provider (e.g., https://auth.example.com or https://login.microsoftonline.com/tenant-id/v2.0)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:77
msgid "The client ID from your OIDC provider"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:87
msgid "Enter client secret"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:89
msgid "The client secret from your OIDC provider"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:95
#: app/templates/admin/oidc_user_detail.html:41
msgid "Authentication Method"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:100
msgid "OIDC Only"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:100
msgid "SSO login only, no local passwords"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:103
msgid "Both"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:103
msgid "SSO and local password authentication"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:107
msgid "Choose whether to allow only OIDC login or both OIDC and local password authentication"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:115
#: app/templates/integrations/wizard_jira.html:66
#: app/templates/integrations/wizard_trello.html:43
msgid "Step 2: Test Connection"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:120
msgid "Click \"Test Connection\" to verify DNS resolution and metadata endpoint accessibility."
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:137
msgid "Step 3: Claim Mapping"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:148
msgid "Claim name containing the username (default: preferred_username)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:161
msgid "Claim name containing the email address (default: email)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:174
msgid "Claim name containing the full name (default: name)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:187
msgid "Claim name containing user groups (default: groups, optional)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:200
msgid "Group name that grants admin access (optional)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:213
msgid "Comma-separated list of email addresses that grant admin access (optional)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:221
#: app/templates/integrations/wizard_jira.html:152
msgid "Step 4: Advanced Settings"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:232
msgid "Space-separated list of OIDC scopes (default: openid profile email)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:245
msgid "OAuth callback URL (usually auto-generated, but can be customized)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:251
msgid "Post-Logout Redirect URI"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:258
msgid "URL to redirect to after logout (optional, only if your provider supports end_session_endpoint)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:266
msgid "Step 5: Generate Configuration"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:271
msgid "Click \"Generate Configuration\" to create environment variable configuration."
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:275
msgid "Generate Configuration"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:280
msgid "Environment Variables (.env file)"
msgstr ""

#: app/templates/admin/oidc_setup_wizard.html:300
msgid "Copy the configuration above and add it to your environment variables or Docker Compose file, then restart the application."
msgstr ""

#: app/templates/admin/oidc_user_detail.html:3
#: app/templates/admin/oidc_user_detail.html:8
msgid "OIDC User Details"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:9
msgid "Profile and OIDC identity for this user"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:13
msgid "Back to OIDC Debug"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:21
msgid "User Profile"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:59
#: app/templates/admin/custom_field_definitions/list.html:54
#: app/templates/admin/link_templates/form.html:64
#: app/templates/admin/link_templates/list.html:58
#: app/templates/admin/oidc_user_detail.html:27
#: app/templates/admin/oidc_user_detail.html:71
#: app/templates/admin/salesman_email_mappings.html:133
#: app/templates/admin/webhooks/form.html:106
#: app/templates/admin/webhooks/list.html:60
#: app/templates/admin/webhooks/view.html:35
#: app/templates/calendar/integrations.html:38
#: app/templates/clients/view.html:320
#: app/templates/integrations/health.html:24
#: app/templates/integrations/view.html:23
#: app/templates/inventory/stock_items/form.html:87
#: app/templates/inventory/stock_items/list.html:89
#: app/templates/inventory/stock_items/view.html:103
#: app/templates/inventory/suppliers/form.html:79
#: app/templates/inventory/suppliers/list.html:76
#: app/templates/inventory/suppliers/view.html:33
#: app/templates/inventory/warehouses/form.html:54
#: app/templates/inventory/warehouses/list.html:49
#: app/templates/inventory/warehouses/view.html:33
#: app/templates/kanban/columns.html:72
#: app/templates/kanban/edit_column.html:80
#: app/templates/payment_gateways/list.html:43
#: app/templates/projects/view.html:120
#: app/templates/recurring_tasks/list.html:76
#: app/templates/reports/scheduled.html:74 app/templates/tasks/_kanban.html:98
#: app/templates/timer/calendar.html:975
#: app/templates/weekly_goals/edit.html:88
#: app/templates/weekly_goals/index.html:176
#: app/templates/weekly_goals/view.html:69 app/utils/i18n_helpers.py:51
#: app/utils/i18n_helpers.py:57 app/utils/i18n_helpers.py:244
#: app/utils/i18n_helpers.py:255 app/utils/i18n_helpers.py:287
#: app/utils/i18n_helpers.py:293
msgid "Active"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:28
msgid "Preferred Language"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:30
#: app/templates/reports/user_report.html:89
msgid "Created At"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:37
msgid "OIDC Information"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:39
msgid "OIDC Issuer"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:40
msgid "OIDC Subject (sub)"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:41
msgid "Local"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:45
msgid "This user was created or linked via OIDC. The issuer and subject are used to uniquely identify the user across login sessions."
msgstr ""

#: app/templates/admin/oidc_user_detail.html:49
msgid "This user has no OIDC information. They may have been created manually or via self-registration without OIDC."
msgstr ""

#: app/templates/admin/oidc_user_detail.html:57
msgid "Activity Statistics"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:65
#: app/templates/calendar/view.html:84 app/templates/calendar/view.html:101
#: app/templates/calendar/view.html:102 app/templates/calendar/view.html:109
#: app/templates/client_portal/base.html:263
#: app/templates/client_portal/base.html:348
#: app/templates/client_portal/projects.html:59
#: app/templates/client_portal/time_entries.html:4
#: app/templates/client_portal/time_entries.html:9
#: app/templates/client_portal/time_entries.html:14
#: app/templates/components/activity_feed_widget.html:31
#: app/templates/components/offline_indicator.html:63
#: app/templates/integrations/wizard_jira.html:142
#: app/templates/projects/time_entries_overview.html:4
#: app/templates/reports/builder.html:366
#: app/templates/timer/time_entries_overview.html:9
#: app/templates/timer/view_timer.html:8
msgid "Time Entries"
msgstr ""

#: app/templates/admin/link_templates/list.html:52
#: app/templates/admin/oidc_user_detail.html:73
#: app/templates/integrations/wizard_asana.html:194
#: app/templates/integrations/wizard_github.html:228
#: app/templates/integrations/wizard_gitlab.html:252
#: app/templates/integrations/wizard_jira.html:257
#: app/templates/integrations/wizard_quickbooks.html:227
#: app/templates/integrations/wizard_xero.html:210
#: app/templates/invoices/edit.html:98 app/templates/invoices/edit.html:106
#: app/templates/invoices/edit.html:505 app/templates/invoices/edit.html:516
#: app/templates/mileage/gps.html:20
#: app/templates/quotes/_edit_quote_form_scripts.html:62
#: app/templates/quotes/_edit_quote_form_scripts.html:73
#: app/templates/quotes/edit.html:93 app/templates/quotes/edit.html:99
msgid "None"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:76
#: app/templates/kiosk/dashboard.html:288 app/templates/user/profile.html:57
msgid "Active Timer"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:80
msgid "Tasks Created"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:89
msgid "Edit User"
msgstr ""

#: app/templates/admin/oidc_user_detail.html:90
msgid "View All Users"
msgstr ""

#: app/templates/admin/pdf_layout.html:3
msgid "PDF Invoice Designer"
msgstr ""

#: app/templates/admin/pdf_layout.html:1649
msgid "Visual Invoice Designer"
msgstr ""

#: app/templates/admin/pdf_layout.html:1652
msgid "Drag and drop elements to design your invoice layout"
msgstr ""

#: app/templates/admin/pdf_layout.html:1661
#: app/templates/admin/quote_pdf_layout.html:1472
msgid "How to use:"
msgstr ""

#: app/templates/admin/pdf_layout.html:1662
#: app/templates/admin/quote_pdf_layout.html:1473
msgid "Click elements from the left sidebar to add them to the canvas. Click elements to select and customize them in the properties panel. Use the alignment tools and keyboard shortcuts for faster editing."
msgstr ""

#: app/templates/admin/pdf_layout.html:1665
#: app/templates/admin/quote_pdf_layout.html:1476
msgid "Keyboard Shortcuts:"
msgstr ""

#: app/templates/admin/pdf_layout.html:1676
msgid "Help: Items Table, Expenses Table & Saving"
msgstr ""

#: app/templates/admin/pdf_layout.html:1679
msgid "Items Table:"
msgstr ""

#: app/templates/admin/pdf_layout.html:1679
msgid "Displays time entries, extra goods, and expenses. Add from Invoice Data in the sidebar. Uses"
msgstr ""

#: app/templates/admin/pdf_layout.html:1680
msgid "Expenses Table:"
msgstr ""

#: app/templates/admin/pdf_layout.html:1680
msgid "Optional separate table for expenses. Add from Invoice Data in the sidebar."
msgstr ""

#: app/templates/admin/pdf_layout.html:1681
#: app/templates/admin/quote_pdf_layout.html:1491
msgid "Saving:"
msgstr ""

#: app/templates/admin/pdf_layout.html:1681
msgid "Click \"Save Design\" to persist. If tables disappear after save, try Reset to restore defaults, then re-add tables."
msgstr ""

#: app/templates/admin/pdf_layout.html:1682
#: app/templates/admin/quote_pdf_layout.html:1492
#: app/templates/admin/salesman_email_mappings.html:138
msgid "Preview:"
msgstr ""

#: app/templates/admin/pdf_layout.html:1682
msgid "Use \"Generate Preview\" to see how the PDF will look with real invoice data."
msgstr ""

#: app/templates/admin/pdf_layout.html:1683
#: app/templates/admin/quote_pdf_layout.html:1493
msgid "See"
msgstr ""

#: app/templates/admin/pdf_layout.html:1683
#: app/templates/admin/quote_pdf_layout.html:1493
msgid "for full documentation."
msgstr ""

#: app/templates/admin/pdf_layout.html:1690
#: app/templates/admin/pdf_layout.html:4407
#: app/templates/admin/quote_pdf_layout.html:1500
#: app/templates/admin/quote_pdf_layout.html:3926
msgid "Clear Canvas"
msgstr ""

#: app/templates/admin/pdf_layout.html:1693
#: app/templates/admin/quote_pdf_layout.html:1503
msgid "Generate Preview"
msgstr ""

#: app/templates/admin/pdf_layout.html:1696
#: app/templates/admin/quote_pdf_layout.html:1506
msgid "Save Design"
msgstr ""

#: app/templates/admin/pdf_layout.html:1699
#: app/templates/admin/quote_pdf_layout.html:1509
msgid "View Code"
msgstr ""

#: app/templates/admin/pdf_layout.html:1702
#: app/templates/admin/quote_pdf_layout.html:1512
msgid "Export JSON"
msgstr ""

#: app/templates/admin/pdf_layout.html:1705
#: app/templates/admin/quote_pdf_layout.html:1515
msgid "Import JSON"
msgstr ""

#: app/templates/admin/pdf_layout.html:1710
#: app/templates/admin/quote_pdf_layout.html:1520
msgid "Snap to Grid (10px)"
msgstr ""

#: app/templates/admin/pdf_layout.html:1726
#: app/templates/admin/quote_pdf_layout.html:1536
msgid "Toolbox"
msgstr ""

#: app/templates/admin/pdf_layout.html:1731
#: app/templates/admin/quote_pdf_layout.html:1541
msgid "Search elements & variables..."
msgstr ""

#: app/templates/admin/pdf_layout.html:1737
#: app/templates/admin/quote_pdf_layout.html:1547
msgid "Elements"
msgstr ""

#: app/templates/admin/pdf_layout.html:1740
#: app/templates/admin/quote_pdf_layout.html:1550
msgid "Variables"
msgstr ""

#: app/templates/admin/pdf_layout.html:1749
#: app/templates/admin/quote_pdf_layout.html:1559
msgid "Basic Elements"
msgstr ""

#: app/templates/admin/pdf_layout.html:1752
#: app/templates/admin/quote_pdf_layout.html:1562
msgid "Custom Text"
msgstr ""

#: app/templates/admin/pdf_layout.html:1756
#: app/templates/admin/quote_pdf_layout.html:1566
msgid "Text"
msgstr ""

#: app/templates/admin/pdf_layout.html:1760
#: app/templates/admin/quote_pdf_layout.html:1570
msgid "Heading"
msgstr ""

#: app/templates/admin/pdf_layout.html:1764
#: app/templates/admin/quote_pdf_layout.html:1574
msgid "Line"
msgstr ""

#: app/templates/admin/pdf_layout.html:1768
#: app/templates/admin/quote_pdf_layout.html:1578
msgid "Rectangle"
msgstr ""

#: app/templates/admin/pdf_layout.html:1772
#: app/templates/admin/quote_pdf_layout.html:1582
msgid "Circle"
msgstr ""

#: app/templates/admin/pdf_layout.html:1777
#: app/templates/admin/quote_pdf_layout.html:1587
msgid "Company Info"
msgstr ""

#: app/templates/admin/pdf_layout.html:1780
#: app/templates/admin/quote_pdf_layout.html:1590
#: app/templates/admin/settings.html:611 app/templates/admin/settings.html:632
#: app/templates/invoices/pdf_default.html:37
#: app/templates/quotes/pdf_default.html:37
msgid "Company Logo"
msgstr ""

#: app/templates/admin/email_templates/create.html:52
#: app/templates/admin/email_templates/edit.html:69
#: app/templates/admin/pdf_layout.html:1784
#: app/templates/admin/quote_pdf_layout.html:1594
#: app/templates/admin/settings.html:211 app/templates/leads/form.html:35
msgid "Company Name"
msgstr ""

#: app/templates/admin/pdf_layout.html:1788
#: app/templates/admin/quote_pdf_layout.html:1598
msgid "Company Details"
msgstr ""

#: app/templates/admin/pdf_layout.html:1792
#: app/templates/admin/quote_pdf_layout.html:1602
#: app/templates/clients/create.html:71 app/templates/clients/edit.html:65
#: app/templates/contacts/form.html:79 app/templates/contacts/view.html:64
#: app/templates/inventory/suppliers/form.html:48
#: app/templates/inventory/suppliers/view.html:69
#: app/templates/inventory/warehouses/form.html:32
#: app/templates/inventory/warehouses/view.html:41
#: app/templates/main/help.html:245 app/templates/projects/create.html:302
#: app/templates/setup/initial_setup.html:143
msgid "Address"
msgstr ""

#: app/templates/admin/pdf_layout.html:1800
#: app/templates/admin/quote_pdf_layout.html:1610
#: app/templates/clients/create.html:67 app/templates/clients/edit.html:61
#: app/templates/contacts/form.html:42 app/templates/contacts/list.html:30
#: app/templates/contacts/list.html:54 app/templates/contacts/view.html:37
#: app/templates/inventory/suppliers/form.html:44
#: app/templates/inventory/suppliers/list.html:45
#: app/templates/inventory/suppliers/list.html:67
#: app/templates/inventory/suppliers/view.html:61
#: app/templates/invoices/pdf_default.html:45 app/templates/leads/form.html:45
#: app/templates/leads/view.html:55 app/templates/projects/create.html:298
#: app/templates/quotes/pdf_default.html:45
#: app/templates/setup/initial_setup.html:152 app/utils/pdf_generator.py:1117
msgid "Phone"
msgstr ""

#: app/templates/admin/pdf_layout.html:1804
#: app/templates/admin/quote_pdf_layout.html:1614
#: app/templates/inventory/suppliers/form.html:52
#: app/templates/inventory/suppliers/view.html:75
#: app/templates/invoices/pdf_default.html:46
#: app/templates/quotes/pdf_default.html:46
#: app/templates/setup/initial_setup.html:156 app/utils/pdf_generator.py:1118
msgid "Website"
msgstr ""

#: app/templates/admin/pdf_layout.html:1808
#: app/templates/admin/quote_pdf_layout.html:1618
#: app/templates/inventory/suppliers/form.html:56
#: app/templates/inventory/suppliers/view.html:83
#: app/templates/invoices/pdf_default.html:48
#: app/templates/quotes/pdf_default.html:48
msgid "Tax ID"
msgstr ""

#: app/templates/admin/pdf_layout.html:1813
msgid "Invoice Data"
msgstr ""

#: app/templates/admin/email_templates/create.html:49
#: app/templates/admin/email_templates/edit.html:66
#: app/templates/admin/pdf_layout.html:1816
#: app/templates/client_portal/invoices.html:71
#: app/templates/payment_gateways/pay.html:11
#: app/templates/payments/view.html:155
#: app/templates/recurring_invoices/view.html:97
#: app/templates/recurring_invoices/view.html:107
#: app/templates/timer/edit_timer.html:366
#: app/templates/timer/edit_timer.html:487
msgid "Invoice Number"
msgstr ""

#: app/templates/admin/pdf_layout.html:1820
msgid "Invoice Date"
msgstr ""

#: app/templates/admin/pdf_layout.html:1824
#: app/templates/admin/quote_pdf_layout.html:1634
#: app/templates/client_portal/invoice_detail.html:35
#: app/templates/client_portal/invoices.html:73
#: app/templates/deals/activity_form.html:46
#: app/templates/invoices/create.html:35 app/templates/invoices/edit.html:30
#: app/templates/invoices/pdf_default.html:58
#: app/templates/leads/activity_form.html:46
#: app/templates/payment_gateways/pay.html:19
#: app/templates/tasks/_kanban.html:132 app/templates/tasks/_kanban.html:1271
#: app/templates/tasks/_tasks_list.html:78 app/templates/tasks/create.html:93
#: app/templates/tasks/edit.html:101 app/utils/pdf_generator.py:1128
msgid "Due Date"
msgstr ""

#: app/templates/admin/pdf_layout.html:1832
#: app/templates/admin/quote_pdf_layout.html:1642
msgid "Client Info"
msgstr ""

#: app/templates/admin/pdf_layout.html:1836
#: app/templates/admin/quote_pdf_layout.html:1646
#: app/templates/clients/create.html:20 app/templates/clients/create.html:120
#: app/templates/clients/edit.html:20 app/templates/import_export/index.html:69
#: app/templates/invoices/create.html:27 app/templates/invoices/edit.html:22
#: app/templates/projects/create.html:274
msgid "Client Name"
msgstr ""

#: app/templates/admin/pdf_layout.html:1840
#: app/templates/admin/quote_pdf_layout.html:1650
#: app/templates/invoices/create.html:39 app/templates/invoices/edit.html:38
msgid "Client Address"
msgstr ""

#: app/templates/admin/pdf_layout.html:1844
msgid "Items Table"
msgstr ""

#: app/templates/admin/pdf_layout.html:1848
msgid "Expenses Table"
msgstr ""

#: app/templates/admin/pdf_layout.html:1852
#: app/templates/admin/quote_pdf_layout.html:1658
#: app/templates/client_portal/invoice_detail.html:82
#: app/templates/client_portal/quote_detail.html:103
#: app/templates/inventory/purchase_orders/form.html:93
#: app/templates/inventory/purchase_orders/view.html:122
#: app/templates/invoices/edit.html:346 app/templates/quotes/view.html:129
msgid "Subtotal"
msgstr ""

#: app/templates/admin/pdf_layout.html:1856
#: app/templates/admin/quote_pdf_layout.html:1662
#: app/templates/client_portal/invoice_detail.html:87
#: app/templates/client_portal/quote_detail.html:108
#: app/templates/inventory/purchase_orders/view.html:133
#: app/templates/invoices/edit.html:351 app/templates/quotes/view.html:155
#: app/utils/pdf_generator_fallback.py:620
msgid "Tax"
msgstr ""

#: app/templates/admin/pdf_layout.html:1860
#: app/templates/admin/quote_pdf_layout.html:1666
#: app/templates/inventory/purchase_orders/list.html:55
#: app/templates/inventory/purchase_orders/list.html:87
#: app/templates/inventory/purchase_orders/view.html:189
#: app/templates/invoices/pdf_default.html:91
#: app/templates/payments/list.html:28 app/templates/projects/goods.html:21
#: app/templates/quotes/accept.html:27 app/templates/quotes/pdf_default.html:98
#: app/utils/pdf_generator.py:1157 app/utils/pdf_generator_fallback.py:240
msgid "Total Amount"
msgstr ""

#: app/templates/admin/pdf_layout.html:1868
#: app/templates/admin/quote_pdf_layout.html:1674
#: app/templates/client_portal/invoice_detail.html:130
#: app/templates/invoices/create.html:55 app/templates/invoices/edit.html:50
msgid "Terms"
msgstr ""

#: app/templates/admin/pdf_layout.html:1873
#: app/templates/admin/quote_pdf_layout.html:1679
msgid "Payment & Project"
msgstr ""

#: app/templates/admin/pdf_layout.html:1876
#: app/templates/admin/quote_pdf_layout.html:1682
msgid "Payment Date"
msgstr ""

#: app/templates/admin/pdf_layout.html:1880
#: app/templates/admin/quote_pdf_layout.html:1686
msgid "Payment Method"
msgstr ""

#: app/templates/admin/pdf_layout.html:1884
#: app/templates/admin/quote_pdf_layout.html:1690
#: app/templates/analytics/dashboard_improved.html:136
msgid "Payment Status"
msgstr ""

#: app/templates/admin/pdf_layout.html:1888
#: app/templates/admin/quote_pdf_layout.html:1694
#: app/templates/invoices/edit.html:364
msgid "Amount Paid"
msgstr ""

#: app/templates/admin/pdf_layout.html:1896
#: app/templates/admin/quote_pdf_layout.html:1702
#: app/templates/project_templates/create_project.html:26
#: app/templates/projects/create.html:22 app/templates/projects/edit.html:22
#: app/templates/quotes/accept.html:48
msgid "Project Name"
msgstr ""

#: app/templates/admin/pdf_layout.html:1900
#: app/templates/admin/quote_pdf_layout.html:1706
#: app/templates/invoices/create.html:31 app/templates/invoices/edit.html:26
msgid "Client Email"
msgstr ""

#: app/templates/admin/pdf_layout.html:1904
#: app/templates/admin/quote_pdf_layout.html:1710
msgid "Client Phone"
msgstr ""

#: app/templates/admin/pdf_layout.html:1912
#: app/templates/admin/quote_pdf_layout.html:1718
msgid "QR Code"
msgstr ""

#: app/templates/admin/pdf_layout.html:1916
#: app/templates/admin/quote_pdf_layout.html:1722
#: app/templates/inventory/stock_items/form.html:49
#: app/templates/inventory/stock_items/view.html:40
msgid "Barcode"
msgstr ""

#: app/templates/admin/pdf_layout.html:1920
#: app/templates/admin/quote_pdf_layout.html:1726
msgid "Page Number"
msgstr ""

#: app/templates/admin/pdf_layout.html:1924
#: app/templates/admin/quote_pdf_layout.html:1730
msgid "Current Date"
msgstr ""

#: app/templates/admin/pdf_layout.html:1928
#: app/templates/admin/quote_pdf_layout.html:1734
msgid "Watermark"
msgstr ""

#: app/templates/admin/pdf_layout.html:1932
#: app/templates/admin/quote_pdf_layout.html:1738
msgid "Bank Info"
msgstr ""

#: app/templates/admin/pdf_layout.html:1936
#: app/templates/admin/quote_pdf_layout.html:1742
#: app/templates/deals/form.html:66
#: app/templates/inventory/purchase_orders/form.html:46
#: app/templates/inventory/stock_items/form.html:53
#: app/templates/inventory/suppliers/form.html:64
#: app/templates/inventory/suppliers/view.html:94
#: app/templates/invoices/edit.html:325 app/templates/leads/form.html:79
#: app/templates/projects/add_cost.html:64
#: app/templates/projects/add_good.html:55
#: app/templates/projects/edit_cost.html:71
#: app/templates/projects/edit_good.html:55
#: app/templates/quotes/create.html:160 app/templates/quotes/edit.html:259
#: app/templates/setup/initial_setup.html:127
msgid "Currency"
msgstr ""

#: app/templates/admin/pdf_layout.html:1940
#: app/templates/admin/quote_pdf_layout.html:1746
msgid "Decorative Image"
msgstr ""

#: app/templates/admin/pdf_layout.html:1948
msgid "Invoice Fields"
msgstr ""

#: app/templates/admin/pdf_layout.html:1951
msgid "Invoice number"
msgstr ""

#: app/templates/admin/pdf_layout.html:1955
msgid "Invoice status (draft/sent/paid/overdue)"
msgstr ""

#: app/templates/admin/pdf_layout.html:1959
#: app/templates/admin/quote_pdf_layout.html:1765
msgid "Issue date"
msgstr ""

#: app/templates/admin/pdf_layout.html:1963
#: app/templates/admin/quote_pdf_layout.html:1769
msgid "Due date"
msgstr ""

#: app/templates/admin/pdf_layout.html:1967
#: app/templates/admin/quote_pdf_layout.html:1773
msgid "Subtotal amount"
msgstr ""

#: app/templates/admin/pdf_layout.html:1971
#: app/templates/admin/quote_pdf_layout.html:1777
msgid "Tax rate (%)"
msgstr ""

#: app/templates/admin/pdf_layout.html:1975
#: app/templates/admin/quote_pdf_layout.html:1781
msgid "Tax amount"
msgstr ""

#: app/templates/admin/pdf_layout.html:1979
#: app/templates/admin/quote_pdf_layout.html:1785
msgid "Total amount"
msgstr ""

#: app/templates/admin/pdf_layout.html:1983
#: app/templates/admin/quote_pdf_layout.html:1789
msgid "Currency code (EUR, USD, etc)"
msgstr ""

#: app/templates/admin/pdf_layout.html:1987
msgid "Invoice notes"
msgstr ""

#: app/templates/admin/pdf_layout.html:1991
#: app/templates/admin/quote_pdf_layout.html:1797
msgid "Terms & conditions"
msgstr ""

#: app/templates/admin/pdf_layout.html:1996
#: app/templates/admin/quote_pdf_layout.html:1802
msgid "Client Fields"
msgstr ""

#: app/templates/admin/pdf_layout.html:1999
#: app/templates/admin/quote_pdf_layout.html:1805
msgid "Client company name"
msgstr ""

#: app/templates/admin/pdf_layout.html:2003
#: app/templates/admin/quote_pdf_layout.html:1809
msgid "Client email address"
msgstr ""

#: app/templates/admin/pdf_layout.html:2007
#: app/templates/admin/quote_pdf_layout.html:1813
msgid "Client full address"
msgstr ""

#: app/templates/admin/pdf_layout.html:2011
#: app/templates/admin/quote_pdf_layout.html:1817
msgid "Client contact person"
msgstr ""

#: app/templates/admin/pdf_layout.html:2015
#: app/templates/admin/quote_pdf_layout.html:1821
msgid "Client phone number"
msgstr ""

#: app/templates/admin/pdf_layout.html:2020
#: app/templates/admin/quote_pdf_layout.html:1826
msgid "Payment Fields"
msgstr ""

#: app/templates/admin/pdf_layout.html:2023
msgid "Payment status"
msgstr ""

#: app/templates/admin/pdf_layout.html:2027
msgid "Payment date"
msgstr ""

#: app/templates/admin/pdf_layout.html:2031
#: app/templates/admin/quote_pdf_layout.html:1837
msgid "Payment method"
msgstr ""

#: app/templates/admin/pdf_layout.html:2035
#: app/templates/admin/quote_pdf_layout.html:1841
msgid "Payment reference number"
msgstr ""

#: app/templates/admin/pdf_layout.html:2039
#: app/templates/admin/quote_pdf_layout.html:1845
msgid "Amount paid"
msgstr ""

#: app/templates/admin/pdf_layout.html:2043
#: app/templates/admin/quote_pdf_layout.html:1849
msgid "Outstanding amount"
msgstr ""

#: app/templates/admin/pdf_layout.html:2047
#: app/templates/admin/quote_pdf_layout.html:1853
msgid "Payment notes"
msgstr ""

#: app/templates/admin/pdf_layout.html:2052
#: app/templates/admin/quote_pdf_layout.html:1858
msgid "Project Fields"
msgstr ""

#: app/templates/admin/pdf_layout.html:2055
#: app/templates/admin/quote_pdf_layout.html:1861
#: app/templates/quotes/accept.html:49
msgid "Project name"
msgstr ""

#: app/templates/admin/pdf_layout.html:2059
#: app/templates/admin/quote_pdf_layout.html:1865
msgid "Project code"
msgstr ""

#: app/templates/admin/pdf_layout.html:2063
#: app/templates/admin/quote_pdf_layout.html:1869
msgid "Project description"
msgstr ""

#: app/templates/admin/pdf_layout.html:2067
#: app/templates/admin/quote_pdf_layout.html:1873
msgid "Project billing reference"
msgstr ""

#: app/templates/admin/pdf_layout.html:2072
#: app/templates/admin/quote_pdf_layout.html:1878
msgid "Company/Settings Fields"
msgstr ""

#: app/templates/admin/pdf_layout.html:2075
#: app/templates/admin/quote_pdf_layout.html:1881
msgid "Your company name"
msgstr ""

#: app/templates/admin/pdf_layout.html:2079
#: app/templates/admin/quote_pdf_layout.html:1885
msgid "Your company address"
msgstr ""

#: app/templates/admin/pdf_layout.html:2083
#: app/templates/admin/quote_pdf_layout.html:1889
msgid "Your company email"
msgstr ""

#: app/templates/admin/pdf_layout.html:2087
#: app/templates/admin/quote_pdf_layout.html:1893
msgid "Your company phone"
msgstr ""

#: app/templates/admin/pdf_layout.html:2091
#: app/templates/admin/quote_pdf_layout.html:1897
msgid "Your company website"
msgstr ""

#: app/templates/admin/pdf_layout.html:2095
#: app/templates/admin/quote_pdf_layout.html:1901
msgid "Your tax ID number"
msgstr ""

#: app/templates/admin/pdf_layout.html:2099
#: app/templates/admin/quote_pdf_layout.html:1905
msgid "Your bank account info"
msgstr ""

#: app/templates/admin/pdf_layout.html:2103
#: app/templates/admin/quote_pdf_layout.html:1909
msgid "Default invoice terms"
msgstr ""

#: app/templates/admin/pdf_layout.html:2107
#: app/templates/admin/quote_pdf_layout.html:1913
msgid "Default invoice notes"
msgstr ""

#: app/templates/admin/pdf_layout.html:2112
#: app/templates/admin/quote_pdf_layout.html:1918
msgid "Date/Time Fields"
msgstr ""

#: app/templates/admin/pdf_layout.html:2115
#: app/templates/admin/quote_pdf_layout.html:1921
msgid "Current date"
msgstr ""

#: app/templates/admin/pdf_layout.html:2119
msgid "Invoice creation date"
msgstr ""

#: app/templates/admin/pdf_layout.html:2123
msgid "Invoice last update date"
msgstr ""

#: app/templates/admin/pdf_layout.html:2128
msgid "Invoice Items Loop"
msgstr ""

#: app/templates/admin/pdf_layout.html:2131
msgid "All items (time + extra goods + expenses)"
msgstr ""

#: app/templates/admin/pdf_layout.html:2135
msgid "Time-based items only"
msgstr ""

#: app/templates/admin/pdf_layout.html:2139
#: app/templates/admin/quote_pdf_layout.html:1941
#: app/templates/quotes/_edit_quote_form_scripts.html:172
#: app/templates/quotes/edit.html:106
msgid "Item description"
msgstr ""

#: app/templates/admin/pdf_layout.html:2143
#: app/templates/admin/quote_pdf_layout.html:1945
msgid "Item quantity"
msgstr ""

#: app/templates/admin/pdf_layout.html:2147
#: app/templates/admin/quote_pdf_layout.html:1949
msgid "Item unit price"
msgstr ""

#: app/templates/admin/pdf_layout.html:2151
#: app/templates/admin/quote_pdf_layout.html:1953
msgid "Item total amount"
msgstr ""

#: app/templates/admin/pdf_layout.html:2155
#: app/templates/admin/quote_pdf_layout.html:1957
msgid "End loop"
msgstr ""

#: app/templates/admin/pdf_layout.html:2159
msgid "Extra Goods Loop"
msgstr ""

#: app/templates/admin/pdf_layout.html:2162
msgid "Loop through extra goods only"
msgstr ""

#: app/templates/admin/pdf_layout.html:2166
msgid "Good name"
msgstr ""

#: app/templates/admin/pdf_layout.html:2170
msgid "Good total amount"
msgstr ""

#: app/templates/admin/pdf_layout.html:2182
#: app/templates/admin/quote_pdf_layout.html:1969
msgid "Design Canvas"
msgstr ""

#: app/templates/admin/pdf_layout.html:2186
#: app/templates/admin/quote_pdf_layout.html:1973
msgid "Page Size:"
msgstr ""

#: app/templates/admin/pdf_layout.html:2208
#: app/templates/admin/pdf_layout.html:2317
#: app/templates/admin/quote_pdf_layout.html:1995
#: app/templates/admin/quote_pdf_layout.html:2089
msgid "Zoom In"
msgstr ""

#: app/templates/admin/pdf_layout.html:2211
#: app/templates/admin/pdf_layout.html:2310
#: app/templates/admin/quote_pdf_layout.html:1998
#: app/templates/admin/quote_pdf_layout.html:2082
msgid "Zoom Out"
msgstr ""

#: app/templates/admin/pdf_layout.html:2215
#: app/templates/admin/quote_pdf_layout.html:2002
msgid "Delete Selected"
msgstr ""

#: app/templates/admin/pdf_layout.html:2228
#: app/templates/admin/quote_pdf_layout.html:2015
msgid "Properties"
msgstr ""

#: app/templates/admin/pdf_layout.html:2235
msgid "Warnings"
msgstr ""

#: app/templates/admin/pdf_layout.html:2237
msgid "Refresh warnings"
msgstr ""

#: app/templates/admin/pdf_layout.html:2242
msgid "No warnings"
msgstr ""

#: app/templates/admin/pdf_layout.html:2249
#: app/templates/admin/quote_pdf_layout.html:2021
msgid "Template Settings"
msgstr ""

#: app/templates/admin/pdf_layout.html:2253
#: app/templates/admin/quote_pdf_layout.html:2025
#: app/templates/user/settings.html:432
msgid "Date Format"
msgstr ""

#: app/templates/admin/pdf_layout.html:2259
#: app/templates/admin/quote_pdf_layout.html:2031
#, python-format
msgid "Use strftime format (e.g., %d.%m.%Y for 12.09.2025)"
msgstr ""

#: app/templates/admin/pdf_layout.html:2264
#: app/templates/admin/quote_pdf_layout.html:2036
msgid "Select an element to edit its properties"
msgstr ""

#: app/templates/admin/pdf_layout.html:2276
#: app/templates/admin/pdf_layout.html:2369
#: app/templates/admin/quote_pdf_layout.html:2048
#: app/templates/admin/quote_pdf_layout.html:2141
msgid "PDF Preview"
msgstr ""

#: app/templates/admin/pdf_layout.html:2281
#: app/templates/admin/pdf_layout.html:2282
#: app/templates/admin/quote_pdf_layout.html:2053
#: app/templates/admin/quote_pdf_layout.html:2054
msgid "Page Size"
msgstr ""

#: app/templates/admin/pdf_layout.html:2292
#: app/templates/admin/quote_pdf_layout.html:2064
msgid "Refresh Preview"
msgstr ""

#: app/templates/admin/pdf_layout.html:2295
#: app/templates/admin/pdf_layout.html:4901
#: app/templates/admin/quote_pdf_layout.html:2067
#: app/templates/admin/quote_pdf_layout.html:4439
#: app/templates/kiosk/base.html:121
msgid "Toggle Fullscreen"
msgstr ""

#: app/templates/admin/pdf_layout.html:2300
#: app/templates/admin/quote_pdf_layout.html:2072
msgid "Close Preview"
msgstr ""

#: app/templates/admin/pdf_layout.html:2314
#: app/templates/admin/quote_pdf_layout.html:2086
msgid "Zoom Level"
msgstr ""

#: app/templates/admin/pdf_layout.html:2320
#: app/templates/admin/quote_pdf_layout.html:2092
msgid "Reset Zoom"
msgstr ""

#: app/templates/admin/pdf_layout.html:2325
#: app/templates/admin/quote_pdf_layout.html:2097
msgid "Fit to Width"
msgstr ""

#: app/templates/admin/pdf_layout.html:2326
#: app/templates/admin/quote_pdf_layout.html:2098
msgid "Fit Width"
msgstr ""

#: app/templates/admin/pdf_layout.html:2328
#: app/templates/admin/quote_pdf_layout.html:2100
msgid "Fit to Height"
msgstr ""

#: app/templates/admin/pdf_layout.html:2329
#: app/templates/admin/quote_pdf_layout.html:2101
msgid "Fit Height"
msgstr ""

#: app/templates/admin/pdf_layout.html:2331
#: app/templates/admin/pdf_layout.html:2332
#: app/templates/admin/quote_pdf_layout.html:2103
#: app/templates/admin/quote_pdf_layout.html:2104
msgid "Actual Size"
msgstr ""

#: app/templates/admin/pdf_layout.html:2343
#: app/templates/admin/quote_pdf_layout.html:2115
msgid "Generating preview..."
msgstr ""

#: app/templates/admin/pdf_layout.html:2354
#: app/templates/admin/quote_pdf_layout.html:2126
msgid "Preview Error"
msgstr ""

#: app/templates/admin/pdf_layout.html:2358
#: app/templates/admin/quote_pdf_layout.html:2130
msgid "Retry"
msgstr ""

#: app/templates/admin/pdf_layout.html:2391
#: app/templates/admin/quote_pdf_layout.html:2163
msgid "Generated Code"
msgstr ""

#: app/templates/admin/pdf_layout.html:3717
#: app/templates/admin/pdf_layout.html:4229
#: app/templates/admin/quote_pdf_layout.html:3267
#: app/templates/admin/quote_pdf_layout.html:3752
msgid "Change Image"
msgstr ""

#: app/templates/admin/pdf_layout.html:3717
#: app/templates/admin/quote_pdf_layout.html:3267
msgid "Upload Image"
msgstr ""

#: app/templates/admin/pdf_layout.html:3724
#: app/templates/admin/quote_pdf_layout.html:3274
msgid "Remove Image"
msgstr ""

#: app/templates/admin/pdf_layout.html:4173
#: app/templates/admin/quote_pdf_layout.html:3702
msgid "Only image files (PNG, JPG, JPEG, GIF, WEBP) are allowed"
msgstr ""

#: app/templates/admin/pdf_layout.html:4179
#: app/templates/admin/quote_pdf_layout.html:3708
msgid "File size must be less than 5MB"
msgstr ""

#: app/templates/admin/pdf_layout.html:4192
#: app/templates/admin/quote_pdf_layout.html:3718
#: app/templates/chat/channel.html:316
msgid "Uploading..."
msgstr ""

#: app/templates/admin/pdf_layout.html:4215
#: app/templates/admin/quote_pdf_layout.html:3740
msgid "Error: Image update function not found"
msgstr ""

#: app/templates/admin/pdf_layout.html:4218
#: app/templates/admin/pdf_layout.html:4223
#: app/templates/admin/quote_pdf_layout.html:3743
#: app/templates/admin/quote_pdf_layout.html:3748
msgid "Failed to upload image"
msgstr ""

#: app/templates/admin/pdf_layout.html:4247
#: app/templates/admin/quote_pdf_layout.html:3766
msgid "Are you sure you want to remove this image?"
msgstr ""

#: app/templates/admin/pdf_layout.html:4405
#: app/templates/admin/quote_pdf_layout.html:3924
msgid "Clear all elements?"
msgstr ""

#: app/templates/admin/pdf_layout.html:4408
#: app/templates/admin/quote_pdf_layout.html:3927
#: app/templates/audit_logs/list.html:63
#: app/templates/components/multi_select.html:116
#: app/templates/tasks/my_tasks.html:181
#: app/templates/timer/bulk_entry.html:226 app/templates/timer/calendar.html:80
#: app/templates/timer/manual_entry.html:161
msgid "Clear"
msgstr ""

#: app/templates/admin/pdf_layout.html:4898
#: app/templates/admin/quote_pdf_layout.html:4436
msgid "Exit Fullscreen"
msgstr ""

#: app/templates/admin/pdf_layout.html:5034
#: app/templates/admin/quote_pdf_layout.html:4572
msgid "Failed to load preview. Please try again."
msgstr ""

#: app/templates/admin/pdf_layout.html:5106
#: app/templates/admin/quote_pdf_layout.html:4648
msgid "Changing page size will reload the preview with the template for that size. Continue?"
msgstr ""

#: app/templates/admin/pdf_layout.html:5158
#: app/templates/admin/quote_pdf_layout.html:4703
msgid "Preview functionality is currently unavailable. Please check the browser console for errors."
msgstr ""

#: app/templates/admin/pdf_layout.html:7732
#: app/templates/admin/quote_pdf_layout.html:7172
msgid "Reset to defaults?"
msgstr ""

#: app/templates/admin/pdf_layout.html:7734
#: app/templates/admin/quote_pdf_layout.html:7174
msgid "Reset PDF Layout"
msgstr ""

#: app/templates/admin/pdf_layout.html:7770
#: app/templates/admin/quote_pdf_layout.html:7210
msgid "Error importing template"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:3
msgid "PDF Quote Designer"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1460
msgid "Visual Quote Designer"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1463
msgid "Drag and drop elements to design your quote layout"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1487
msgid "Help: Quote Items Table & Saving"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1490
msgid "Quote Items Table:"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1490
msgid "Displays quote line items. Add from Invoice Data in the sidebar."
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1491
msgid "Click \"Save Design\" to persist. If the table disappears after save, try Reset to restore defaults, then re-add the Items Table."
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1492
msgid "Use \"Generate Preview\" to see how the PDF will look with real quote data."
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1623
msgid "Quote Data"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1626
#: app/templates/client_portal/quotes.html:25
#: app/templates/client_portal/quotes.html:37
#: app/templates/quotes/_quotes_list.html:33
#: app/templates/quotes/_quotes_list.html:50
msgid "Quote Number"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1630
msgid "Quote Date"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1654
msgid "Quote Items Table"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1754
msgid "Quote Fields"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1757
msgid "Quote number"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1761
msgid "Quote status (draft/sent/paid/overdue)"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1793
msgid "Quote notes"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1829
msgid "Quote status"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1833
msgid "Quote accepted date"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1925
msgid "Quote creation date"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1929
msgid "Quote last update date"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1934
msgid "Quote Items Loop"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:1937
msgid "Loop through invoice items"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:5971
msgid "Align Left"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:5974
msgid "Center Horizontally"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:5977
msgid "Align Right"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:5980
msgid "Align Top"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:5983
msgid "Center Vertically"
msgstr ""

#: app/templates/admin/quote_pdf_layout.html:5986
msgid "Align Bottom"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:4
msgid "Salesman Email Mappings"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:21
msgid "Email Mappings"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:23
msgid "Add Mapping"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:32
#: app/templates/admin/salesman_email_mappings.html:74
#: app/templates/admin/salesman_email_mappings.html:201
msgid "Salesman Initial"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:35
#: app/templates/admin/salesman_email_mappings.html:206
#: app/templates/user/settings.html:66
msgid "Email Address"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:38
#: app/templates/admin/salesman_email_mappings.html:209
msgid "Pattern/Domain"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:63
#: app/templates/admin/salesman_email_mappings.html:230
msgid "Add Email Mapping"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:78
msgid "1-20 letters only"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:80
msgid "The salesman initial from client custom fields (e.g., MM for Max Mustermann)"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:92
msgid "Direct Email Address"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:101
#, python-brace-format
msgid "Pattern (e.g., {value}@test.de)"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:110
msgid "Domain (e.g., test.de)"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:116
#, python-brace-format
msgid "Will generate: {initial}@domain"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:127
msgid "Additional notes about this mapping"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:192
msgid "No mappings configured. Click \"Add Mapping\" to create one."
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:242
msgid "Edit Email Mapping"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:366
#: app/templates/admin/salesman_email_mappings.html:370
msgid "Error saving mapping"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:375
msgid "Are you sure you want to delete this mapping?"
msgstr ""

#: app/templates/admin/salesman_email_mappings.html:394
#: app/templates/admin/salesman_email_mappings.html:398
msgid "Error deleting mapping"
msgstr ""

#: app/templates/admin/settings.html:117
msgid "Time Entry Requirements"
msgstr ""

#: app/templates/admin/settings.html:119
msgid "Optionally require users to provide task and description when logging worked time. Enforced across web, mobile, and desktop."
msgstr ""

#: app/templates/admin/settings.html:124
msgid "Require task selection when logging time (project-based entries only)"
msgstr ""

#: app/templates/admin/settings.html:128
msgid "Require description when logging time"
msgstr ""

#: app/templates/admin/settings.html:131
msgid "Minimum description length (characters)"
msgstr ""

#: app/templates/admin/settings.html:133
msgid "Minimum number of characters required in the description field."
msgstr ""

#: app/templates/admin/settings.html:136
msgid "Default daily working hours (for new users)"
msgstr ""

#: app/templates/admin/settings.html:138
msgid "Used as the standard hours per day for overtime calculation when new users are created. Existing users keep their own setting."
msgstr ""

#: app/templates/admin/settings.html:159
msgid "Support visibility"
msgstr ""

#: app/templates/admin/settings.html:161
msgid "Remove donate and support prompts for all users with a one-time key (€25, one key per instance)."
msgstr ""

#: app/templates/admin/settings.html:164
msgid "Copy your System ID below and use it when buying the key."
msgstr ""

#: app/templates/admin/settings.html:165
msgid "Buy key"
msgstr ""

#: app/templates/admin/settings.html:165
msgid "— key sent by email."
msgstr ""

#: app/templates/admin/settings.html:166
msgid "Paste the code below and click Verify."
msgstr ""

#: app/templates/admin/settings.html:170 app/templates/main/about.html:220
#: app/templates/main/donate.html:50 app/templates/main/donate.html:138
msgid "Get key"
msgstr ""

#: app/templates/admin/settings.html:176
msgid "Step 1: System ID"
msgstr ""

#: app/templates/admin/settings.html:183
msgid "Use this ID when purchasing your key."
msgstr ""

#: app/templates/admin/settings.html:189
msgid "Supporter instance: prompts are minimized; support entry points remain available."
msgstr ""

#: app/templates/admin/settings.html:195
msgid "Step 3: Paste code"
msgstr ""

#: app/templates/admin/settings.html:196
msgid "Enter code from email"
msgstr ""

#: app/templates/admin/settings.html:199
msgid "Verify and hide for everyone"
msgstr ""

#: app/templates/admin/settings.html:208
msgid "Company Branding"
msgstr ""

#: app/templates/admin/settings.html:243
msgid "Invoice Defaults"
msgstr ""

#: app/templates/admin/settings.html:391
msgid "Backup Settings"
msgstr ""

#: app/templates/admin/settings.html:406
#: app/templates/integrations/list.html:74
msgid "LDAP"
msgstr ""

#: app/templates/admin/settings.html:408
msgid "LDAP authentication is configured with environment variables. Values below are read-only."
msgstr ""

#: app/templates/admin/settings.html:412
msgid "Enabled for auth"
msgstr ""

#: app/templates/admin/settings.html:416
msgid "Host"
msgstr ""

#: app/templates/admin/settings.html:420 app/templates/admin/settings.html:421
msgid "SSL"
msgstr ""

#: app/templates/admin/settings.html:420 app/templates/admin/settings.html:422
msgid "TLS"
msgstr ""

#: app/templates/admin/settings.html:421 app/templates/admin/settings.html:422
#: app/templates/quotes/view.html:217 app/templates/quotes/view.html:224
msgid "on"
msgstr ""

#: app/templates/admin/settings.html:421 app/templates/admin/settings.html:422
msgid "off"
msgstr ""

#: app/templates/admin/settings.html:429
msgid "User DN"
msgstr ""

#: app/templates/admin/settings.html:433
msgid "User login attribute"
msgstr ""

#: app/templates/admin/settings.html:447
msgid "Test LDAP Connection"
msgstr ""

#: app/templates/admin/settings.html:455
msgid "Export Settings"
msgstr ""

#: app/templates/admin/settings.html:470 app/templates/kiosk/base.html:6
msgid "Kiosk Mode"
msgstr ""

#: app/templates/admin/settings.html:475
msgid "Enable Kiosk Mode"
msgstr ""

#: app/templates/admin/settings.html:479
msgid "Kiosk mode provides a simplified interface for warehouse operations with barcode scanning and time tracking. Access at"
msgstr ""

#: app/templates/admin/settings.html:484
msgid "Auto-Logout Timeout (Minutes)"
msgstr ""

#: app/templates/admin/settings.html:488
msgid "Default Movement Type"
msgstr ""

#: app/templates/admin/settings.html:490
#: app/templates/inventory/movements/form.html:32
#: app/templates/inventory/movements/list.html:24
#: app/templates/inventory/reports/movement_history.html:42
#: app/templates/inventory/stock_items/history.html:34
msgid "Adjustment"
msgstr ""

#: app/templates/admin/settings.html:491
#: app/templates/inventory/movements/form.html:33
#: app/templates/inventory/movements/list.html:25
#: app/templates/inventory/reports/movement_history.html:43
#: app/templates/inventory/stock_items/history.html:35
#: app/templates/kiosk/base.html:151
msgid "Transfer"
msgstr ""

#: app/templates/admin/settings.html:492
#: app/templates/inventory/movements/form.html:34
#: app/templates/inventory/movements/list.html:26
#: app/templates/inventory/reports/movement_history.html:44
#: app/templates/inventory/stock_items/history.html:36
msgid "Sale"
msgstr ""

#: app/templates/admin/settings.html:493
#: app/templates/inventory/movements/form.html:35
#: app/templates/inventory/movements/list.html:27
#: app/templates/inventory/reports/movement_history.html:45
#: app/templates/inventory/stock_items/history.html:37
msgid "Rent"
msgstr ""

#: app/templates/admin/settings.html:494
#: app/templates/inventory/movements/form.html:36
#: app/templates/inventory/movements/list.html:28
#: app/templates/inventory/reports/movement_history.html:46
#: app/templates/inventory/stock_items/history.html:38
msgid "Purchase"
msgstr ""

#: app/templates/admin/settings.html:500
msgid "Allow Camera-Based Barcode Scanning"
msgstr ""

#: app/templates/admin/settings.html:506
msgid "Require Reason for Stock Adjustments"
msgstr ""

#: app/templates/admin/settings.html:518
msgid "Configure the shared server-side AI helper for the web app, desktop app, and API clients. Hosted provider keys stay on the server."
msgstr ""

#: app/templates/admin/settings.html:522
msgid "Availability"
msgstr ""

#: app/templates/admin/settings.html:524
msgid "Use environment default"
msgstr ""

#: app/templates/admin/settings.html:524
msgid "currently"
msgstr ""

#: app/templates/admin/settings.html:530
#: app/templates/integrations/health.html:22
#: app/templates/payment_gateways/create.html:26
#: app/templates/payment_gateways/list.html:26
#: app/templates/payment_gateways/list.html:38
msgid "Provider"
msgstr ""

#: app/templates/admin/settings.html:537
msgid "Base URL"
msgstr ""

#: app/templates/admin/settings.html:539
msgid "For Ollama, this is the URL from the Flask server to Ollama."
msgstr ""

#: app/templates/admin/settings.html:542
msgid "Model"
msgstr ""

#: app/templates/admin/settings.html:546
msgid "Hosted API key"
msgstr ""

#: app/templates/admin/settings.html:547
msgid "Stored; leave blank to keep"
msgstr ""

#: app/templates/admin/settings.html:547
msgid "Only required for hosted providers"
msgstr ""

#: app/templates/admin/settings.html:551
msgid "Clear stored API key"
msgstr ""

#: app/templates/admin/settings.html:557
msgid "Timeout seconds"
msgstr ""

#: app/templates/admin/settings.html:561
msgid "Context limit"
msgstr ""

#: app/templates/admin/settings.html:566
msgid "System prompt"
msgstr ""

#: app/templates/admin/settings.html:571
msgid "Test AI connection"
msgstr ""

#: app/templates/admin/settings.html:580
msgid "Privacy & Analytics"
msgstr ""

#: app/templates/admin/settings.html:604 app/templates/user/settings.html:497
msgid "Save Settings"
msgstr ""

#: app/templates/admin/settings.html:649
msgid "Upload New Logo"
msgstr ""

#: app/templates/admin/settings.html:663
msgid "Logo Preview"
msgstr ""

#: app/templates/admin/settings.html:712
msgid "Are you sure you want to remove the company logo?"
msgstr ""

#: app/templates/admin/settings.html:714
msgid "Remove Logo"
msgstr ""

#: app/templates/admin/settings.html:731
msgid "Copied"
msgstr ""

#: app/templates/admin/settings.html:745
msgid "Please enter a code."
msgstr ""

#: app/templates/admin/settings.html:760
msgid "Success. Donate UI is now hidden for everyone. Reload the page to see the change."
msgstr ""

#: app/templates/admin/settings.html:772 app/templates/admin/settings.html:835
msgid "Request failed."
msgstr ""

#: app/templates/admin/settings.html:815 app/templates/admin/settings.html:848
msgid "Testing connection..."
msgstr ""

#: app/templates/admin/settings.html:831
msgid "Connection failed."
msgstr ""

#: app/templates/admin/settings.html:859
msgid "AI connection succeeded."
msgstr ""

#: app/templates/admin/settings.html:862 app/templates/admin/settings.html:866
msgid "AI connection failed."
msgstr ""

#: app/templates/admin/telemetry.html:8
msgid "Telemetry & Analytics Dashboard"
msgstr ""

#: app/templates/admin/telemetry.html:50
#: app/templates/setup/initial_setup.html:268
msgid "Admin → Settings"
msgstr ""

#: app/templates/admin/user_form.html:60
msgid "Password Reset"
msgstr ""

#: app/templates/admin/user_form.html:67
#: app/templates/auth/edit_profile.html:69
msgid "Leave blank to keep current password"
msgstr ""

#: app/templates/admin/user_form.html:84 app/templates/clients/edit.html:102
#: app/templates/email/client_portal_password_setup.html:72
msgid "Client Portal Access"
msgstr ""

#: app/templates/admin/user_form.html:107
msgid "Assigned Clients (Subcontractor)"
msgstr ""

#: app/templates/admin/user_form.html:112
msgid "Assigned clients"
msgstr ""

#: app/templates/admin/user_form.html:118
msgid "Hold Ctrl/Cmd to select multiple clients."
msgstr ""

#: app/templates/admin/users.html:34
msgid "Admin Access"
msgstr ""

#: app/templates/admin/users.html:56
msgid "Migrate to new role system"
msgstr ""

#: app/templates/admin/users.html:57
msgid "Migrate"
msgstr ""

#: app/templates/admin/users.html:80
msgid "Roles"
msgstr ""

#: app/templates/admin/users.html:93
msgid "No users found."
msgstr ""

#: app/templates/admin/users.html:104
#, python-brace-format
msgid "Cannot delete user \"{name}\" because they have {count} time entries. Users with existing time entries cannot be deleted."
msgstr ""

#: app/templates/admin/users.html:107
msgid "Cannot Delete User"
msgstr ""

#: app/templates/admin/users.html:119
#, python-brace-format
msgid "Are you sure you want to delete user \"{name}\"? This action cannot be undone."
msgstr ""

#: app/templates/admin/users.html:122
msgid "Delete User"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:7
#: app/templates/admin/custom_field_definitions/list.html:7
#: app/templates/admin/custom_field_definitions/list.html:12
msgid "Custom Field Definitions"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:8
#: app/templates/admin/custom_field_definitions/form.html:67
#: app/templates/admin/link_templates/form.html:8
#: app/templates/admin/link_templates/form.html:73
#: app/templates/chat/index.html:124 app/templates/main/dashboard.html:791
#: app/templates/timer/calendar.html:206
msgid "Create"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:13
msgid "Edit Custom Field Definition"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:13
msgid "Create Custom Field Definition"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:14
msgid "Define a global custom field that can be used across all clients"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:24
#: app/templates/admin/custom_field_definitions/list.html:24
#: app/templates/admin/custom_field_definitions/list.html:35
#: app/templates/admin/link_templates/form.html:42
#: app/templates/admin/link_templates/list.html:26
#: app/templates/admin/link_templates/list.html:45
msgid "Field Key"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:25
#: app/templates/admin/link_templates/form.html:43
msgid "e.g., debtor_number"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:26
msgid "Unique identifier for this field (letters, numbers, and underscores only). Cannot be changed after creation."
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:30
#: app/templates/admin/custom_field_definitions/list.html:25
#: app/templates/admin/custom_field_definitions/list.html:38
#: app/templates/kanban/columns.html:49
msgid "Label"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:31
msgid "e.g., Debtor Number"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:32
msgid "Display name shown in client forms"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:37
msgid "Optional help text for this field"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:42
#: app/templates/admin/link_templates/form.html:56
msgid "Display Order"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:44
#: app/templates/admin/link_templates/form.html:58
msgid "Lower numbers appear first"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:50
#: app/templates/admin/custom_field_definitions/list.html:26
#: app/templates/admin/custom_field_definitions/list.html:44
msgid "Mandatory"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:52
msgid "Required field - clients must fill this in"
msgstr ""

#: app/templates/admin/custom_field_definitions/form.html:61
msgid "Only active fields are shown in client forms"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:13
msgid "Manage global custom field definitions for clients"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:15
#: app/templates/admin/custom_field_definitions/list.html:82
msgid "Create Custom Field"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:27
#: app/templates/admin/custom_field_definitions/list.html:51
#: app/templates/admin/link_templates/list.html:28
#: app/templates/admin/link_templates/list.html:55
#: app/templates/quotes/create.html:61 app/templates/quotes/create.html:93
#: app/templates/quotes/create.html:124 app/templates/quotes/edit.html:66
#: app/templates/quotes/edit.html:141 app/templates/quotes/edit.html:198
msgid "Order"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:46
msgid "Required"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:48
#: app/templates/invoices/edit.html:748 app/templates/invoices/list.html:135
#: app/templates/invoices/view.html:514 app/templates/kiosk/dashboard.html:331
#: app/templates/kiosk/dashboard.html:347
#: app/templates/projects/archive.html:41
#: app/templates/timer/time_entries_overview.html:202
#: app/templates/timer/timer_page.html:160
#: app/templates/timer/timer_page.html:169
msgid "Optional"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:80
msgid "No custom field definitions found."
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:89
msgid "How Custom Field Definitions Work"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:91
msgid "Custom field definitions allow you to create global fields that can be used across all clients. This eliminates the need to recreate the same custom fields for each client."
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:92
msgid "Features:"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:94
msgid "Define custom fields once and use them for all clients"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:95
msgid "Mark fields as mandatory to ensure they are always filled"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:96
msgid "Control field order and visibility"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:97
msgid "Link templates can be assigned to make field values clickable"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:99
#: app/templates/admin/link_templates/list.html:96
msgid "Example:"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:101
msgid "Create a field definition with key \"debtor_number\" and label \"Debtor Number\""
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:102
msgid "Mark it as mandatory if required"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:103
msgid "When creating or editing a client, this field will automatically appear"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:104
msgid "Create a link template to make the value clickable (e.g., https://erp.example.com/customer/%value%)"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:119
#, python-format
msgid "Warning: %(count)d client(s) have a value for this custom field. Deleting this field definition will remove the field value from all %(count)d client(s). Are you sure you want to delete the custom field definition \"%(label)s\"?"
msgstr ""

#: app/templates/admin/custom_field_definitions/list.html:123
msgid "Are you sure you want to delete this custom field definition?"
msgstr ""

#: app/templates/admin/email_templates/create.html:38
#: app/templates/admin/email_templates/edit.html:55
msgid "Set as default template"
msgstr ""

#: app/templates/admin/email_templates/create.html:46
#: app/templates/admin/email_templates/edit.html:63
#: app/templates/admin/email_templates/view.html:75
msgid "HTML Template"
msgstr ""

#: app/templates/admin/email_templates/create.html:55
#: app/templates/admin/email_templates/edit.html:72
#: app/templates/invoices/edit.html:748 app/templates/invoices/view.html:514
msgid "Custom Message"
msgstr ""

#: app/templates/admin/email_templates/create.html:58
#: app/templates/admin/email_templates/edit.html:75
msgid "More Variables"
msgstr ""

#: app/templates/admin/email_templates/create.html:121
#: app/templates/project_templates/create.html:107
#: app/templates/project_templates/list.html:118
msgid "Create Template"
msgstr ""

#: app/templates/admin/email_templates/create.html:130
#: app/templates/admin/email_templates/edit.html:147
msgid "Available Variables"
msgstr ""

#: app/templates/admin/email_templates/create.html:137
#: app/templates/admin/email_templates/edit.html:154
msgid "Invoice Variables"
msgstr ""

#: app/templates/admin/email_templates/create.html:160
#: app/templates/admin/email_templates/edit.html:177
msgid "Other Variables"
msgstr ""

#: app/templates/admin/email_templates/edit.html:19
#: app/templates/admin/email_templates/edit.html:31
#: app/templates/admin/email_templates/view.html:21
#: app/templates/admin/email_templates/view.html:33
msgid "Send test email"
msgstr ""

#: app/templates/admin/email_templates/edit.html:20
msgid "Sends the saved template (save changes first). Uses the same rendering as a real invoice email. Default recipient can be set under Admin → Email Configuration."
msgstr ""

#: app/templates/admin/email_templates/edit.html:23
#: app/templates/admin/email_templates/view.html:25
msgid "Recipient"
msgstr ""

#: app/templates/admin/email_templates/edit.html:27
#: app/templates/admin/email_templates/view.html:29
msgid "Invoice ID"
msgstr ""

#: app/templates/admin/email_templates/edit.html:138
#: app/templates/project_templates/edit.html:137
msgid "Update Template"
msgstr ""

#: app/templates/admin/email_templates/edit.html:622
#: app/templates/admin/email_templates/view.html:130
msgid "Failed to send test email."
msgstr ""

#: app/templates/admin/email_templates/list.html:63
msgid "No email templates found."
msgstr ""

#: app/templates/admin/email_templates/list.html:64
msgid "Create your first email template to customize invoice emails."
msgstr ""

#: app/templates/admin/email_templates/list.html:66
msgid "Create Email Template"
msgstr ""

#: app/templates/admin/email_templates/list.html:75
msgid "Delete Email Template"
msgstr ""

#: app/templates/admin/email_templates/list.html:77
#: app/templates/quotes/list.html:368
#: app/templates/timer/time_entries_overview.html:388
msgid "Are you sure you want to delete"
msgstr ""

#: app/templates/admin/email_templates/list.html:77
#: app/templates/invoices/list.html:161 app/templates/invoices/view.html:373
#: app/templates/kanban/columns.html:149
#: app/templates/timer/time_entries_overview.html:388
msgid "This action cannot be undone."
msgstr ""

#: app/templates/admin/email_templates/view.html:22
msgid "Uses the same rendering as a real invoice email. Set a default address under Admin → Email Configuration (Test recipient email)."
msgstr ""

#: app/templates/admin/email_templates/view.html:40
msgid "Template Information"
msgstr ""

#: app/templates/admin/integrations/list.html:4
msgid "Integration Setup"
msgstr ""

#: app/templates/admin/integrations/list.html:21
msgid "Configure OAuth credentials for each integration. Global integrations are shared across all users."
msgstr ""

#: app/templates/admin/integrations/list.html:34
#: app/templates/integrations/health.html:39
#: app/templates/integrations/list.html:136
#: app/templates/integrations/manage.html:561
msgid "Global"
msgstr ""

#: app/templates/admin/integrations/list.html:38
msgid "Per User"
msgstr ""

#: app/templates/admin/integrations/setup.html:4
#: app/templates/admin/integrations/setup.html:15
#: app/templates/integrations/list.html:167
msgid "Setup"
msgstr ""

#: app/templates/admin/integrations/setup.html:29
#: app/templates/integrations/manage.html:79
#: app/templates/integrations/wizard_trello.html:18
msgid "Trello API Key"
msgstr ""

#: app/templates/admin/integrations/setup.html:36
#: app/templates/integrations/manage.html:86
msgid "Get from https://trello.com/app-key"
msgstr ""

#: app/templates/admin/integrations/setup.html:39
#: app/templates/integrations/manage.html:89
msgid "Get your API key from"
msgstr ""

#: app/templates/admin/integrations/setup.html:45
#: app/templates/integrations/manage.html:95
#: app/templates/integrations/wizard_trello.html:28
msgid "Trello API Secret"
msgstr ""

#: app/templates/admin/integrations/setup.html:52
#: app/templates/admin/integrations/setup.html:91
msgid "Leave empty to keep current value"
msgstr ""

#: app/templates/admin/integrations/setup.html:54
#: app/templates/integrations/manage.html:104
msgid "Get your API secret from"
msgstr ""

#: app/templates/admin/integrations/setup.html:55
#: app/templates/integrations/manage.html:105
msgid "(shown after generating API key)"
msgstr ""

#: app/templates/admin/integrations/setup.html:62
msgid "After saving API Key and Secret, you can connect Trello using OAuth flow. The token will be generated automatically during connection."
msgstr ""

#: app/templates/admin/integrations/setup.html:72
#: app/templates/admin/integrations/setup.html:79
#: app/templates/integrations/manage.html:122
#: app/templates/integrations/manage.html:129
msgid "OAuth Client ID"
msgstr ""

#: app/templates/admin/integrations/setup.html:85
#: app/templates/integrations/manage.html:135
#: app/templates/integrations/manage.html:141
msgid "OAuth Client Secret"
msgstr ""

#: app/templates/admin/integrations/setup.html:93
#: app/templates/integrations/manage.html:144
msgid "Required for new setup. Leave empty to keep existing secret."
msgstr ""

#: app/templates/admin/integrations/setup.html:107
msgid "Leave empty for \"common\" (multi-tenant)"
msgstr ""

#: app/templates/admin/integrations/setup.html:109
#: app/templates/integrations/manage.html:160
#: app/templates/integrations/wizard_microsoft_teams.html:25
#: app/templates/integrations/wizard_outlook_calendar.html:25
msgid "Leave empty to use \"common\" (multi-tenant). Enter your Azure AD tenant ID for single-tenant apps."
msgstr ""

#: app/templates/admin/integrations/setup.html:117
#: app/templates/integrations/manage.html:168
#: app/templates/integrations/wizard_gitlab.html:11
msgid "GitLab Instance URL"
msgstr ""

#: app/templates/admin/integrations/setup.html:127
#: app/templates/integrations/manage.html:178
#: app/templates/integrations/wizard_gitlab.html:18
msgid "URL of your GitLab instance. Use \"https://gitlab.com\" for GitLab.com or your self-hosted GitLab URL."
msgstr ""

#: app/templates/admin/integrations/setup.html:134
#: app/templates/integrations/manage.html:186
#: app/templates/integrations/wizard_asana.html:36
#: app/templates/integrations/wizard_github.html:36
#: app/templates/integrations/wizard_gitlab.html:64
#: app/templates/integrations/wizard_jira.html:53
#: app/templates/integrations/wizard_microsoft_teams.html:64
#: app/templates/integrations/wizard_outlook_calendar.html:64
msgid "OAuth Redirect URI"
msgstr ""

#: app/templates/admin/integrations/setup.html:136
#: app/templates/integrations/manage.html:188
msgid "Add this URL as an authorized redirect URI in your OAuth app settings:"
msgstr ""

#: app/templates/admin/integrations/setup.html:144
#: app/templates/integrations/manage.html:196
msgid "Automatic Connection Flow"
msgstr ""

#: app/templates/admin/integrations/setup.html:147
#: app/templates/integrations/manage.html:199
msgid "After you save these credentials, users can click \"Connect Google Calendar\""
msgstr ""

#: app/templates/admin/integrations/setup.html:148
#: app/templates/integrations/manage.html:200
msgid "They will be automatically redirected to Google OAuth"
msgstr ""

#: app/templates/admin/integrations/setup.html:149
#: app/templates/integrations/manage.html:201
msgid "No manual credential entry needed - fully automatic!"
msgstr ""

#: app/templates/admin/integrations/setup.html:150
#: app/templates/integrations/manage.html:202
msgid "Each user connects their own Google Calendar account"
msgstr ""

#: app/templates/admin/integrations/setup.html:159
#: app/templates/integrations/manage.html:212
#: app/templates/integrations/manage.html:270
msgid "Save Credentials"
msgstr ""

#: app/templates/admin/integrations/setup.html:170
msgid "How Google Calendar Works"
msgstr ""

#: app/templates/admin/integrations/setup.html:174
msgid "After you save the OAuth credentials above, users can connect their Google Calendar by clicking \"Connect Google Calendar\" on the Integrations page."
msgstr ""

#: app/templates/admin/integrations/setup.html:178
msgid "They will be automatically redirected to Google to authorize access - no manual credential entry needed!"
msgstr ""

#: app/templates/admin/integrations/setup.html:182
msgid "Each user connects their own Google Calendar account (per-user integration)."
msgstr ""

#: app/templates/admin/integrations/setup.html:188
#: app/templates/integrations/manage.html:578
#: app/templates/integrations/manage.html:589
msgid "Connection Status"
msgstr ""

#: app/templates/admin/integrations/setup.html:194
msgid "View Integration"
msgstr ""

#: app/templates/admin/integrations/setup.html:200
msgid "Next Steps"
msgstr ""

#: app/templates/admin/integrations/setup.html:202
msgid "After saving credentials, connect the integration:"
msgstr ""

#: app/templates/admin/integrations/setup.html:205
msgid "Connect Integration"
msgstr ""

#: app/templates/admin/link_templates/form.html:13
msgid "Edit Link Template"
msgstr ""

#: app/templates/admin/link_templates/form.html:13
#: app/templates/admin/link_templates/list.html:15
#: app/templates/admin/link_templates/list.html:86
msgid "Create Link Template"
msgstr ""

#: app/templates/admin/link_templates/form.html:14
msgid "Configure URL template for client custom fields"
msgstr ""

#: app/templates/admin/link_templates/form.html:24
#: app/templates/project_templates/create.html:20
#: app/templates/project_templates/edit.html:20
msgid "Template Name"
msgstr ""

#: app/templates/admin/link_templates/form.html:25
msgid "e.g., ERP System Link"
msgstr ""

#: app/templates/admin/link_templates/form.html:26
msgid "A descriptive name for this link template"
msgstr ""

#: app/templates/admin/link_templates/form.html:31
msgid "Optional description"
msgstr ""

#: app/templates/admin/link_templates/form.html:35
#: app/templates/admin/link_templates/list.html:25
#: app/templates/admin/link_templates/list.html:42
msgid "URL Template"
msgstr ""

#: app/templates/admin/link_templates/form.html:36
msgid "https://example.com/customer/%value%"
msgstr ""

#: app/templates/admin/link_templates/form.html:37
#, python-brace-format
msgid "URL with {value} or %value% placeholder. Examples: https://erp.example.com/customer/{value} or https://erp.example.com/customer/%value%"
msgstr ""

#: app/templates/admin/link_templates/form.html:44
msgid "The key in the client custom_fields JSON to use"
msgstr ""

#: app/templates/admin/link_templates/form.html:48
#: app/templates/admin/link_templates/list.html:27
#: app/templates/admin/link_templates/list.html:48
#: app/templates/kanban/columns.html:50
msgid "Icon"
msgstr ""

#: app/templates/admin/link_templates/form.html:49
msgid "fas fa-link"
msgstr ""

#: app/templates/admin/link_templates/form.html:50
msgid "Font Awesome icon class (e.g., fas fa-link)"
msgstr ""

#: app/templates/admin/link_templates/form.html:66
msgid "Only active templates are shown on client pages"
msgstr ""

#: app/templates/admin/link_templates/list.html:13
msgid "Manage URL templates for client custom fields"
msgstr ""

#: app/templates/admin/link_templates/list.html:24
#: app/templates/admin/link_templates/list.html:36
#: app/templates/admin/webhooks/form.html:23
#: app/templates/admin/webhooks/list.html:24
#: app/templates/admin/webhooks/list.html:35
#: app/templates/contacts/list.html:27 app/templates/contacts/list.html:38
#: app/templates/inventory/stock_items/form.html:27
#: app/templates/inventory/stock_items/list.html:50
#: app/templates/inventory/stock_items/list.html:63
#: app/templates/inventory/suppliers/form.html:28
#: app/templates/inventory/suppliers/list.html:42
#: app/templates/inventory/suppliers/list.html:54
#: app/templates/inventory/warehouses/form.html:28
#: app/templates/inventory/warehouses/list.html:23
#: app/templates/inventory/warehouses/list.html:34
#: app/templates/invoices/edit.html:232 app/templates/leads/list.html:50
#: app/templates/leads/list.html:62 app/templates/main/help.html:195
#: app/templates/payment_gateways/list.html:25
#: app/templates/payment_gateways/list.html:35
#: app/templates/projects/_projects_list.html:78
#: app/templates/projects/add_good.html:19
#: app/templates/projects/edit_good.html:19
#: app/templates/projects/goods.html:39 app/templates/projects/goods.html:51
#: app/templates/projects/list.html:159 app/templates/projects/view.html:428
#: app/templates/projects/view.html:440
#: app/templates/quotes/_edit_quote_form_scripts.html:232
#: app/templates/quotes/create.html:125 app/templates/quotes/edit.html:199
#: app/templates/quotes/edit.html:215
#: app/templates/recurring_invoices/list.html:23
#: app/templates/recurring_invoices/list.html:35
#: app/templates/recurring_tasks/list.html:30
#: app/templates/recurring_tasks/list.html:41
#: app/templates/reports/saved_views_list.html:27
#: app/templates/reports/saved_views_list.html:38
#: app/templates/tasks/_tasks_list.html:47
#: app/templates/workforce/dashboard.html:254
msgid "Name"
msgstr ""

#: app/templates/admin/link_templates/list.html:68
msgid "Are you sure you want to delete this link template?"
msgstr ""

#: app/templates/admin/link_templates/list.html:84
msgid "No link templates found."
msgstr ""

#: app/templates/admin/link_templates/list.html:93
msgid "How Link Templates Work"
msgstr ""

#: app/templates/admin/link_templates/list.html:95
msgid "Link templates allow you to create quick links to external systems (like ERP systems) using values from client custom fields."
msgstr ""

#: app/templates/admin/link_templates/list.html:98
msgid "Create a custom field called \"debtor_number\" on a client"
msgstr ""

#: app/templates/admin/link_templates/list.html:99
msgid "Create a link template with URL:"
msgstr ""

#: app/templates/admin/link_templates/list.html:100
msgid "Set the field key to \"debtor_number\""
msgstr ""

#: app/templates/admin/link_templates/list.html:101
msgid "When viewing the client, a link will appear that opens the ERP system with the correct customer ID"
msgstr ""

#: app/templates/admin/link_templates/list.html:103
msgid "URL Template Format:"
msgstr ""

#: app/templates/admin/link_templates/list.html:103
#, python-brace-format
msgid "Use {value} as a placeholder for the custom field value."
msgstr ""

#: app/templates/admin/permissions/list.html:8
#: app/templates/admin/permissions/list.html:13
msgid "System Permissions"
msgstr ""

#: app/templates/admin/permissions/list.html:14
msgid "All available permissions in the system"
msgstr ""

#: app/templates/admin/permissions/list.html:16
#: app/templates/admin/roles/form.html:10 app/templates/admin/roles/view.html:9
msgid "Back to Roles"
msgstr ""

#: app/templates/admin/permissions/list.html:24
#: app/templates/admin/roles/list.html:113
#: app/templates/admin/users/roles.html:44
msgid "permissions"
msgstr ""

#: app/templates/admin/permissions/list.html:38
msgid "No description available"
msgstr ""

#: app/templates/admin/permissions/list.html:53
msgid "About Permissions"
msgstr ""

#: app/templates/admin/permissions/list.html:55
msgid "Permissions define what actions users can perform in the system. These permissions are assigned to roles, and roles are assigned to users. This provides a flexible and granular access control system."
msgstr ""

#: app/templates/admin/roles/form.html:17
#: app/templates/admin/roles/view.html:20
msgid "Edit Role"
msgstr ""

#: app/templates/admin/roles/form.html:19
msgid "Create New Role"
msgstr ""

#: app/templates/admin/roles/form.html:26
#: app/templates/admin/roles/list.html:91
msgid "Role Name"
msgstr ""

#: app/templates/admin/roles/form.html:41
msgid "A unique name for this role"
msgstr ""

#: app/templates/admin/roles/form.html:55
msgid "Optional description of this role"
msgstr ""

#: app/templates/admin/roles/form.html:59
#: app/templates/admin/roles/list.html:93
#: app/templates/admin/roles/view.html:76
msgid "Permissions"
msgstr ""

#: app/templates/admin/roles/form.html:60
msgid "Select the permissions this role should have:"
msgstr ""

#: app/templates/admin/roles/form.html:75
#: app/templates/admin/roles/form.html:112
msgid "Toggle All"
msgstr ""

#: app/templates/admin/roles/form.html:99
msgid "Module visibility"
msgstr ""

#: app/templates/admin/roles/form.html:101
msgid "Select which modules should be hidden for this role. Hidden modules will not appear in the navigation and cannot be accessed directly."
msgstr ""

#: app/templates/admin/roles/form.html:124
msgid "Hide"
msgstr ""

#: app/templates/admin/roles/form.html:143
msgid "Update Role"
msgstr ""

#: app/templates/admin/roles/form.html:145
#: app/templates/admin/roles/list.html:18
msgid "Create Role"
msgstr ""

#: app/templates/admin/roles/list.html:13
msgid "Manage roles and their permissions"
msgstr ""

#: app/templates/admin/roles/list.html:17
msgid "View Permissions"
msgstr ""

#: app/templates/admin/roles/list.html:32
msgid "Total Roles"
msgstr ""

#: app/templates/admin/roles/list.html:46
msgid "System Roles"
msgstr ""

#: app/templates/admin/roles/list.html:60
msgid "Custom Roles"
msgstr ""

#: app/templates/admin/roles/list.html:74
#: app/templates/admin/roles/view.html:48
msgid "Assigned Users"
msgstr ""

#: app/templates/admin/roles/list.html:95
#: app/templates/admin/roles/view.html:30
#: app/templates/contacts/communication_form.html:28
#: app/templates/deals/activity_form.html:25
#: app/templates/inventory/movements/list.html:57
#: app/templates/inventory/movements/list.html:79
#: app/templates/inventory/reports/movement_history.html:73
#: app/templates/inventory/reports/movement_history.html:95
#: app/templates/inventory/reservations/list.html:42
#: app/templates/inventory/reservations/list.html:64
#: app/templates/inventory/stock_items/history.html:64
#: app/templates/inventory/stock_items/history.html:81
#: app/templates/inventory/stock_items/view.html:240
#: app/templates/inventory/stock_items/view.html:250
#: app/templates/inventory/warehouses/view.html:131
#: app/templates/inventory/warehouses/view.html:145
#: app/templates/leads/activity_form.html:25
#: app/templates/workforce/dashboard.html:120
msgid "Type"
msgstr ""

#: app/templates/admin/roles/list.html:105
msgid "Default role"
msgstr ""

#: app/templates/admin/roles/list.html:123
msgid "user"
msgstr ""

#: app/templates/admin/roles/list.html:126
msgid "No users"
msgstr ""

#: app/templates/admin/roles/list.html:136 app/templates/kanban/columns.html:88
msgid "Custom"
msgstr ""

#: app/templates/admin/roles/list.html:142
#: app/templates/admin/roles/view.html:65
#: app/templates/budget/dashboard.html:92
#: app/templates/client_portal/invoices.html:135
#: app/templates/client_portal/quotes.html:67
#: app/templates/contacts/list.html:58 app/templates/deals/list.html:81
#: app/templates/integrations/health.html:99 app/templates/issues/list.html:136
#: app/templates/leads/list.html:85
#: app/templates/projects/_kanban_tailwind.html:79
#: app/templates/projects/view.html:480
#: app/templates/quotes/_quotes_list.html:77
#: app/templates/reports/saved_views_list.html:61
#: app/templates/tasks/overdue.html:72
#: app/templates/timer/_time_entries_list.html:179
#: app/templates/weekly_goals/index.html:191
msgid "View"
msgstr ""

#: app/templates/admin/roles/list.html:159
msgid "Permissions for"
msgstr ""

#: app/templates/admin/roles/list.html:187
msgid "No permissions assigned."
msgstr ""

#: app/templates/admin/roles/list.html:194
msgid "No roles found."
msgstr ""

#: app/templates/admin/roles/list.html:202
msgid "About Roles & Permissions"
msgstr ""

#: app/templates/admin/roles/list.html:204
msgid "Roles are collections of permissions that can be assigned to users. System roles are predefined and cannot be deleted or renamed, but custom roles can be created for your specific needs."
msgstr ""

#: app/templates/admin/roles/list.html:211
msgid "Are you sure you want to delete the role"
msgstr ""

#: app/templates/admin/roles/list.html:213
msgid "Delete Role"
msgstr ""

#: app/templates/admin/roles/view.html:16
#: app/templates/client_portal/widgets/projects.html:28
msgid "No description"
msgstr ""

#: app/templates/admin/roles/view.html:27
msgid "Role Information"
msgstr ""

#: app/templates/admin/roles/view.html:34
msgid "System Role"
msgstr ""

#: app/templates/admin/roles/view.html:38
msgid "Custom Role"
msgstr ""

#: app/templates/admin/roles/view.html:44
msgid "Total Permissions"
msgstr ""

#: app/templates/admin/roles/view.html:52 app/templates/audit_logs/list.html:47
#: app/templates/audit_logs/list.html:117
#: app/templates/budget/dashboard.html:86
#: app/templates/budget/project_detail.html:279
#: app/templates/calendar/event_detail.html:172
#: app/templates/client_portal/issue_detail.html:83
#: app/templates/deals/view.html:93
#: app/templates/inventory/purchase_orders/view.html:195
#: app/templates/inventory/stock_items/view.html:182
#: app/templates/inventory/stock_items/view.html:213
#: app/templates/issues/list.html:99 app/templates/issues/list.html:133
#: app/templates/issues/view.html:165 app/templates/leads/view.html:107
#: app/templates/project_templates/view.html:94
#: app/templates/quotes/_quotes_list.html:38
#: app/templates/quotes/_quotes_list.html:73 app/templates/quotes/view.html:408
#: app/templates/reports/saved_views_list.html:30
#: app/templates/reports/saved_views_list.html:53
#: app/templates/tasks/_kanban.html:1335 app/templates/tasks/edit.html:263
#: app/templates/timer/edit_timer.html:528
msgid "Created"
msgstr ""

#: app/templates/admin/roles/view.html:59
msgid "Users with this Role"
msgstr ""

#: app/templates/admin/roles/view.html:70
msgid "No users assigned to this role yet."
msgstr ""

#: app/templates/admin/roles/view.html:110
msgid "This role has no permissions assigned."
msgstr ""

#: app/templates/admin/users/roles.html:10
msgid "Back to User"
msgstr ""

#: app/templates/admin/users/roles.html:15
msgid "Manage Roles for"
msgstr ""

#: app/templates/admin/users/roles.html:20
msgid "Assign Roles"
msgstr ""

#: app/templates/admin/users/roles.html:22
msgid "Select the roles this user should have. Users inherit all permissions from their assigned roles."
msgstr ""

#: app/templates/admin/users/roles.html:54
msgid "Update Roles"
msgstr ""

#: app/templates/admin/users/roles.html:65
msgid "Current Effective Permissions"
msgstr ""

#: app/templates/admin/users/roles.html:67
msgid "These are all the permissions the user currently has through their roles:"
msgstr ""

#: app/templates/admin/users/roles.html:80
msgid "No permissions (assign roles to grant permissions)"
msgstr ""

#: app/templates/admin/webhooks/form.html:8
#: app/templates/admin/webhooks/form.html:13
#: app/templates/admin/webhooks/list.html:15
msgid "Create Webhook"
msgstr ""

#: app/templates/admin/webhooks/form.html:8
#: app/templates/admin/webhooks/form.html:13
msgid "Edit Webhook"
msgstr ""

#: app/templates/admin/webhooks/form.html:14
msgid "Configure webhook for integrations"
msgstr ""

#: app/templates/admin/webhooks/form.html:36
#: app/templates/integrations/wizard_github.html:176
msgid "Webhook URL"
msgstr ""

#: app/templates/admin/webhooks/form.html:40
msgid "The URL where webhook events will be sent"
msgstr ""

#: app/templates/admin/webhooks/form.html:45
#: app/templates/admin/webhooks/list.html:26
#: app/templates/admin/webhooks/list.html:44
#: app/templates/admin/webhooks/view.html:46
#: app/templates/calendar/view.html:76 app/templates/calendar/view.html:93
#: app/templates/calendar/view.html:94 app/templates/calendar/view.html:107
msgid "Events"
msgstr ""

#: app/templates/admin/webhooks/form.html:58
msgid "Select which events should trigger this webhook"
msgstr ""

#: app/templates/admin/webhooks/form.html:64
#: app/templates/admin/webhooks/view.html:42
msgid "HTTP Method"
msgstr ""

#: app/templates/admin/webhooks/form.html:74
msgid "Content Type"
msgstr ""

#: app/templates/admin/webhooks/form.html:83
msgid "Max Retries"
msgstr ""

#: app/templates/admin/webhooks/form.html:89
msgid "Retry Delay (seconds)"
msgstr ""

#: app/templates/admin/webhooks/form.html:95
msgid "Timeout (seconds)"
msgstr ""

#: app/templates/admin/webhooks/form.html:116
msgid "Regenerate Secret"
msgstr ""

#: app/templates/admin/webhooks/form.html:118
msgid "Warning: Regenerating the secret will invalidate the current secret"
msgstr ""

#: app/templates/admin/webhooks/list.html:13
msgid "Manage webhook integrations"
msgstr ""

#: app/templates/admin/webhooks/list.html:25
#: app/templates/admin/webhooks/list.html:41
#: app/templates/admin/webhooks/view.html:28
msgid "URL"
msgstr ""

#: app/templates/admin/webhooks/list.html:28
#: app/templates/admin/webhooks/list.html:65
#: app/templates/admin/webhooks/view.html:69
msgid "Statistics"
msgstr ""

#: app/templates/admin/webhooks/list.html:67
#: app/templates/client_portal/invoice_detail.html:60
#: app/templates/client_portal/invoice_detail.html:69
#: app/templates/client_portal/invoice_detail.html:92
#: app/templates/client_portal/quote_detail.html:72
#: app/templates/client_portal/quote_detail.html:90
#: app/templates/client_portal/quote_detail.html:113
#: app/templates/inventory/purchase_orders/form.html:81
#: app/templates/inventory/purchase_orders/view.html:138
#: app/templates/inventory/stock_items/view.html:223
#: app/templates/inventory/stock_levels/item.html:63
#: app/templates/invoices/edit.html:356
#: app/templates/invoices/generate_from_time.html:123
#: app/templates/projects/goods.html:43 app/templates/projects/goods.html:65
#: app/templates/quotes/create.html:68 app/templates/quotes/edit.html:73
#: app/templates/quotes/view.html:105 app/templates/quotes/view.html:160
#: app/templates/reports/iterative_view.html:64
#: app/utils/pdf_generator_fallback.py:575
msgid "Total"
msgstr ""

#: app/templates/admin/webhooks/list.html:90
msgid "No webhooks configured"
msgstr ""

#: app/templates/admin/webhooks/list.html:92
msgid "Create Your First Webhook"
msgstr ""

#: app/templates/admin/webhooks/view.html:14
msgid "Webhook details"
msgstr ""

#: app/templates/admin/webhooks/view.html:17
#: app/templates/integrations/health.html:103
msgid "Test"
msgstr ""

#: app/templates/admin/webhooks/view.html:57
msgid "Secret"
msgstr ""

#: app/templates/admin/webhooks/view.html:60
msgid "(truncated)"
msgstr ""

#: app/templates/admin/webhooks/view.html:72
msgid "Total Deliveries"
msgstr ""

#: app/templates/admin/webhooks/view.html:76
msgid "Successful"
msgstr ""

#: app/templates/admin/webhooks/view.html:85
msgid "Last Delivery"
msgstr ""

#: app/templates/admin/webhooks/view.html:95
msgid "Recent Deliveries"
msgstr ""

#: app/templates/admin/webhooks/view.html:101
#: app/templates/admin/webhooks/view.html:111
#: app/templates/calendar/event_form.html:106
msgid "Event"
msgstr ""

#: app/templates/admin/webhooks/view.html:103
#: app/templates/admin/webhooks/view.html:123
msgid "Attempt"
msgstr ""

#: app/templates/admin/webhooks/view.html:104
#: app/templates/admin/webhooks/view.html:124
msgid "Response"
msgstr ""

#: app/templates/admin/webhooks/view.html:105
#: app/templates/admin/webhooks/view.html:132
#: app/templates/client_portal/time_entries.html:65
msgid "Time"
msgstr ""

#: app/templates/admin/webhooks/view.html:118
msgid "Retrying"
msgstr ""

#: app/templates/admin/webhooks/view.html:139
msgid "No deliveries yet"
msgstr ""

#: app/templates/admin/webhooks/view.html:145
msgid "Send a test webhook event?"
msgstr ""

#: app/templates/admin/webhooks/view.html:158
msgid "Test webhook sent successfully!"
msgstr ""

#: app/templates/admin/webhooks/view.html:161
msgid "Error:"
msgstr ""

#: app/templates/admin/webhooks/view.html:161
#: app/templates/reports/scheduled.html:156
msgid "Unknown error"
msgstr ""

#: app/templates/admin/webhooks/view.html:165
msgid "Error sending test webhook:"
msgstr ""

#: app/templates/analytics/dashboard.html:4
#: app/templates/analytics/dashboard.html:30
#: app/templates/analytics/dashboard_improved.html:3
#: app/templates/analytics/dashboard_improved.html:8
msgid "Analytics Dashboard"
msgstr ""

#: app/templates/analytics/dashboard.html:14
#: app/templates/analytics/dashboard_improved.html:13
#: app/templates/audit_logs/list.html:55
msgid "Last 7 days"
msgstr ""

#: app/templates/analytics/dashboard.html:15
#: app/templates/analytics/dashboard_improved.html:14
#: app/templates/audit_logs/list.html:56 app/templates/reports/index.html:39
#: app/templates/reports/index.html:47 app/templates/reports/index.html:55
msgid "Last 30 days"
msgstr ""

#: app/templates/analytics/dashboard.html:16
#: app/templates/analytics/dashboard_improved.html:15
#: app/templates/audit_logs/list.html:57
msgid "Last 90 days"
msgstr ""

#: app/templates/analytics/dashboard.html:17
#: app/templates/analytics/dashboard_improved.html:16
#: app/templates/audit_logs/list.html:58
msgid "Last year"
msgstr ""

#: app/templates/analytics/dashboard.html:22
msgid "Export all charts as PNG"
msgstr ""

#: app/templates/analytics/dashboard.html:23
msgid "Export Charts"
msgstr ""

#: app/templates/analytics/dashboard.html:31
msgid "Key metrics and insights about your time tracking"
msgstr ""

#: app/templates/analytics/dashboard.html:58
#: app/templates/analytics/dashboard_improved.html:62
msgid "Avg Daily Hours"
msgstr ""

#: app/templates/analytics/dashboard.html:63
msgid "Regular"
msgstr ""

#: app/templates/analytics/dashboard.html:63
msgid "Overtime"
msgstr ""

#: app/templates/analytics/dashboard.html:73
#: app/templates/analytics/dashboard_improved.html:83
msgid "Daily Hours Trend"
msgstr ""

#: app/templates/analytics/dashboard.html:85
#: app/templates/analytics/mobile_dashboard.html:85
msgid "Billable vs Non-Billable"
msgstr ""

#: app/templates/analytics/dashboard.html:113
#: app/templates/analytics/dashboard_improved.html:172
msgid "Weekly Trends"
msgstr ""

#: app/templates/analytics/dashboard.html:129
msgid "Hours Forecast"
msgstr ""

#: app/templates/analytics/dashboard.html:131
msgid "Next 7 days based on 7-day average"
msgstr ""

#: app/templates/analytics/dashboard.html:146
msgid "Daily Regular vs Overtime"
msgstr ""

#: app/templates/analytics/dashboard.html:162
#: app/templates/analytics/dashboard_improved.html:180
#: app/templates/analytics/mobile_dashboard.html:115
msgid "Hours by Time of Day"
msgstr ""

#: app/templates/analytics/dashboard.html:174
msgid "Project Efficiency"
msgstr ""

#: app/templates/analytics/dashboard.html:191
#: app/templates/analytics/dashboard_improved.html:191
#: app/templates/analytics/mobile_dashboard.html:131
msgid "User Performance"
msgstr ""

#: app/templates/analytics/dashboard.html:219
#: app/templates/analytics/dashboard_improved.html:213
#: app/templates/analytics/mobile_dashboard.html:159
msgid "Failed to load charts. Please try again."
msgstr ""

#: app/templates/analytics/dashboard.html:220
#: app/templates/analytics/dashboard_improved.html:214
#: app/templates/analytics/mobile_dashboard.html:160
msgid "Failed to refresh charts. Please try again."
msgstr ""

#: app/templates/analytics/dashboard.html:223
#: app/templates/analytics/dashboard_improved.html:217
#: app/templates/analytics/mobile_dashboard.html:163
msgid "Hour of Day"
msgstr ""

#: app/templates/analytics/dashboard.html:224
#: app/templates/analytics/dashboard_improved.html:218
#: app/templates/analytics/mobile_dashboard.html:164
msgid "Revenue"
msgstr ""

#: app/templates/analytics/dashboard.html:499
msgid "Forecast"
msgstr ""

#: app/templates/analytics/dashboard.html:745
msgid "Charts exported. Check your downloads."
msgstr ""

#: app/templates/analytics/dashboard.html:745
#: app/templates/analytics/dashboard_improved.html:19
#: app/templates/timer/calendar.html:49
msgid "Export"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:9
msgid "Key metrics and actionable insights"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:36
msgid "vs previous period"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:45
msgid "of total"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:53
#: app/templates/analytics/dashboard_improved.html:154
msgid "Potential Revenue"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:54
msgid "Avg rate:"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:59
#: app/templates/budget/project_detail.html:165
msgid "Trend"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:63
msgid "active projects"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:70
msgid "Insights & Recommendations"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:86
msgid "Cumulative"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:94
msgid "Billable Distribution"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:104
msgid "Task Status Overview"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:110
msgid "Tasks Completed"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:114
#: app/templates/analytics/dashboard_improved.html:222
#: app/templates/client_portal/issues.html:31 app/templates/issues/edit.html:40
#: app/templates/issues/list.html:40 app/templates/issues/view.html:101
#: app/templates/tasks/create.html:72 app/templates/tasks/create.html:86
#: app/templates/tasks/create.html:476 app/templates/tasks/edit.html:81
#: app/templates/tasks/edit.html:656 app/templates/tasks/my_tasks.html:57
#: app/templates/tasks/my_tasks.html:132 app/utils/i18n_helpers.py:17
#: app/utils/i18n_helpers.py:29
msgid "In Progress"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:118
#: app/templates/analytics/dashboard_improved.html:223
#: app/templates/tasks/create.html:71 app/templates/tasks/create.html:86
#: app/templates/tasks/create.html:475 app/templates/tasks/edit.html:80
#: app/templates/tasks/edit.html:655 app/templates/tasks/my_tasks.html:40
#: app/templates/tasks/my_tasks.html:131 app/utils/i18n_helpers.py:16
#: app/utils/i18n_helpers.py:28
msgid "To Do"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:124
msgid "Revenue by Project"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:132
msgid "Payments Over Time"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:144
msgid "Payment Methods"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:148
msgid "Revenue vs Payments"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:158
msgid "Collection Rate"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:184
msgid "Project Completion Rate"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:219
#: app/templates/analytics/mobile_dashboard.html:40
#: app/templates/main/dashboard.html:555 app/templates/main/help.html:204
#: app/templates/project_templates/view.html:39
#: app/templates/projects/_projects_list.html:95
#: app/templates/projects/add_good.html:62 app/templates/projects/edit.html:61
#: app/templates/projects/edit_good.html:62
#: app/templates/projects/goods.html:70 app/templates/projects/list.html:176
#: app/templates/reports/user_report.html:83
#: app/templates/reports/week_in_review.html:30
#: app/templates/tasks/edit.html:175
#: app/templates/timer/_time_entries_list.html:173
#: app/templates/timer/bulk_entry.html:207
#: app/templates/timer/calendar.html:199 app/templates/timer/calendar.html:883
#: app/templates/timer/edit_timer.html:322
#: app/templates/timer/edit_timer.html:469
#: app/templates/timer/manual_entry.html:153
#: app/templates/timer/time_entries_overview.html:113
#: app/templates/timer/view_timer.html:122
#: app/templates/timer/view_timer.html:126 app/templates/user/profile.html:110
msgid "Billable"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:220
msgid "Non-Billable"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:221
#: app/templates/contacts/communication_form.html:59
#: app/templates/deals/activity_form.html:36
#: app/templates/leads/activity_form.html:36
#: app/templates/tasks/_kanban.html:1346 app/templates/tasks/edit.html:266
#: app/templates/tasks/my_tasks.html:91 app/templates/weekly_goals/edit.html:89
#: app/templates/weekly_goals/index.html:39
#: app/templates/weekly_goals/index.html:172
#: app/templates/weekly_goals/view.html:67 app/utils/i18n_helpers.py:222
#: app/utils/i18n_helpers.py:234 app/utils/i18n_helpers.py:245
#: app/utils/i18n_helpers.py:256
msgid "Completed"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:225
#: app/templates/contacts/communication_form.html:62
#: app/templates/inventory/purchase_orders/list.html:28
#: app/templates/inventory/purchase_orders/list.html:84
#: app/templates/inventory/purchase_orders/view.html:45
#: app/templates/inventory/reservations/list.html:25
#: app/templates/inventory/reservations/list.html:84
#: app/templates/issues/edit.html:43 app/templates/issues/list.html:43
#: app/templates/issues/view.html:104 app/templates/projects/archive.html:68
#: app/templates/tasks/create.html:75 app/templates/tasks/create.html:86
#: app/templates/tasks/create.html:479 app/templates/tasks/edit.html:84
#: app/templates/tasks/edit.html:659 app/templates/tasks/my_tasks.html:135
#: app/templates/weekly_goals/edit.html:91
#: app/templates/weekly_goals/view.html:73 app/utils/i18n_helpers.py:20
#: app/utils/i18n_helpers.py:32 app/utils/i18n_helpers.py:68
#: app/utils/i18n_helpers.py:80 app/utils/i18n_helpers.py:247
#: app/utils/i18n_helpers.py:258
msgid "Cancelled"
msgstr ""

#: app/templates/analytics/dashboard_improved.html:226
msgid "Completion Rate (%)"
msgstr ""

#: app/templates/analytics/mobile_dashboard.html:20
msgid "Mobile insights overview"
msgstr ""

#: app/templates/analytics/mobile_dashboard.html:58
msgid "Daily Avg"
msgstr ""

#: app/templates/analytics/mobile_dashboard.html:70
msgid "Daily Hours"
msgstr ""

#: app/templates/analytics/mobile_dashboard.html:100
msgid "Top Projects"
msgstr ""

#: app/templates/approvals/list.html:4 app/templates/approvals/list.html:8
#: app/templates/approvals/list.html:13 app/templates/approvals/view.html:8
#: app/templates/client_portal/approvals.html:4
#: app/templates/client_portal/approvals.html:14
msgid "Time Entry Approvals"
msgstr ""

#: app/templates/approvals/list.html:14
#: app/templates/client_portal/approvals.html:15
msgid "Review and approve time entries"
msgstr ""

#: app/templates/approvals/list.html:23
#: app/templates/client_portal/widgets/pending_actions.html:9
#: app/templates/invoice_approvals/list.html:4
msgid "Pending Approvals"
msgstr ""

#: app/templates/approvals/list.html:33 app/templates/approvals/list.html:95
#: app/templates/client_portal/approvals.html:86
#: app/templates/components/offline_indicator.html:66
#: app/templates/invoices/generate_from_time.html:39
#: app/templates/invoices/generate_from_time.html:57
#: app/templates/timer/view_timer.html:4 app/templates/timer/view_timer.html:14
msgid "Time Entry"
msgstr ""

#: app/templates/approvals/list.html:37 app/templates/approvals/view.html:86
#: app/templates/invoice_approvals/list.html:31
msgid "Requested by"
msgstr ""

#: app/templates/approvals/list.html:38 app/templates/approvals/view.html:31
#: app/templates/client_portal/approvals.html:132
#: app/templates/project_templates/view.html:74
#: app/templates/projects/time_entries_overview.html:60
#: app/templates/reports/iterative_view.html:33
#: app/templates/reports/iterative_view.html:65
#: app/templates/reports/iterative_view.html:80
#: app/templates/reports/time_entries_report.html:85
#: app/templates/reports/unpaid_hours_report.html:92
#: app/templates/tasks/edit.html:243 app/templates/tasks/edit.html:255
#: app/templates/timer/calendar.html:877 app/templates/user/settings.html:349
#: app/templates/user/settings.html:364
msgid "hours"
msgstr ""

#: app/templates/approvals/list.html:46 app/templates/approvals/view.html:46
#: app/templates/client_portal/time_entries.html:88
#: app/templates/clients/view.html:377 app/templates/main/dashboard.html:89
#: app/templates/main/dashboard.html:354 app/templates/main/search.html:49
#: app/templates/timer/manual_entry.html:29
#: app/templates/timer/timer_page.html:57
#: app/templates/weekly_goals/view.html:186
msgid "Direct"
msgstr ""

#: app/templates/approvals/list.html:54 app/templates/approvals/view.html:132
#: app/templates/invoice_approvals/list.html:39
#: app/templates/invoice_approvals/view.html:108
#: app/templates/quotes/view.html:209 app/templates/quotes/view.html:550
#: app/templates/workforce/dashboard.html:76
#: app/templates/workforce/dashboard.html:181
msgid "Approve"
msgstr ""

#: app/templates/approvals/list.html:58 app/templates/approvals/list.html:140
#: app/templates/approvals/view.html:136 app/templates/approvals/view.html:159
#: app/templates/invoice_approvals/list.html:43
#: app/templates/invoice_approvals/list.html:86
#: app/templates/invoice_approvals/view.html:112
#: app/templates/quotes/view.html:210 app/templates/quotes/view.html:252
#: app/templates/quotes/view.html:568 app/templates/workforce/dashboard.html:81
#: app/templates/workforce/dashboard.html:186
msgid "Reject"
msgstr ""

#: app/templates/approvals/list.html:75
msgid "No pending approvals"
msgstr ""

#: app/templates/approvals/list.html:76
msgid "All time entries have been reviewed."
msgstr ""

#: app/templates/approvals/list.html:85
msgid "My Requests"
msgstr ""

#: app/templates/approvals/list.html:116
msgid "No pending requests"
msgstr ""

#: app/templates/approvals/list.html:117
msgid "You have no time entry approval requests."
msgstr ""

#: app/templates/approvals/list.html:128 app/templates/approvals/view.html:147
msgid "Reject Time Entry"
msgstr ""

#: app/templates/approvals/list.html:134 app/templates/approvals/view.html:153
msgid "Reason for rejection"
msgstr ""

#: app/templates/approvals/view.html:4 app/templates/approvals/view.html:9
#: app/templates/approvals/view.html:14
#: app/templates/invoice_approvals/view.html:3
#: app/templates/invoice_approvals/view.html:8
msgid "Approval Details"
msgstr ""

#: app/templates/approvals/view.html:15
msgid "Review time entry approval request"
msgstr ""

#: app/templates/approvals/view.html:23
#: app/templates/reports/unpaid_hours_report.html:114
#: app/templates/timer/calendar.html:217 app/templates/timer/calendar.html:799
#: app/templates/timer/calendar.html:803
msgid "Time Entry Details"
msgstr ""

#: app/templates/approvals/view.html:26 app/templates/timer/edit_timer.html:538
msgid "Entry ID"
msgstr ""

#: app/templates/approvals/view.html:71
msgid "Approval Information"
msgstr ""

#: app/templates/approvals/view.html:90
msgid "Requested at"
msgstr ""

#: app/templates/approvals/view.html:95 app/templates/quotes/view.html:215
msgid "Approved by"
msgstr ""

#: app/templates/approvals/view.html:101
#: app/templates/invoice_approvals/view.html:88
msgid "Approved at"
msgstr ""

#: app/templates/approvals/view.html:107
msgid "Request comment"
msgstr ""

#: app/templates/approvals/view.html:113
msgid "Approval comment"
msgstr ""

#: app/templates/approvals/view.html:119
msgid "Rejection reason"
msgstr ""

#: app/templates/audit_logs/list.html:14
msgid "Track who changed what and when"
msgstr ""

#: app/templates/audit_logs/list.html:19
#: app/templates/projects/time_entries_overview.html:28
#: app/templates/reports/builder.html:83
#: app/templates/timer/time_entries_overview.html:31
msgid "Filters"
msgstr ""

#: app/templates/audit_logs/list.html:22
msgid "Entity Type"
msgstr ""

#: app/templates/audit_logs/list.html:24
#: app/templates/inventory/movements/list.html:23
#: app/templates/inventory/reports/movement_history.html:41
#: app/templates/inventory/stock_items/history.html:33
#: app/templates/tasks/my_tasks.html:162
msgid "All Types"
msgstr ""

#: app/templates/audit_logs/list.html:31 app/templates/audit_logs/list.html:32
msgid "Entity ID"
msgstr ""

#: app/templates/audit_logs/list.html:37
#: app/templates/reports/time_entries_report.html:27
#: app/templates/timer/time_entries_overview.html:69
msgid "All Users"
msgstr ""

#: app/templates/audit_logs/list.html:44 app/templates/audit_logs/list.html:77
#: app/templates/audit_logs/list.html:97 app/templates/deals/view.html:194
#: app/templates/deals/view.html:206
#: app/templates/inventory/purchase_orders/form.html:84
#: app/templates/invoices/edit.html:77 app/templates/invoices/edit.html:165
#: app/templates/invoices/edit.html:238 app/templates/quotes/create.html:99
#: app/templates/quotes/create.html:131 app/templates/quotes/edit.html:147
#: app/templates/quotes/edit.html:205
msgid "Action"
msgstr ""

#: app/templates/audit_logs/list.html:46
msgid "All Actions"
msgstr ""

#: app/templates/audit_logs/list.html:48 app/templates/deals/view.html:97
#: app/templates/reports/saved_views_list.html:31
#: app/templates/reports/saved_views_list.html:56
#: app/templates/tasks/edit.html:264
msgid "Updated"
msgstr ""

#: app/templates/audit_logs/list.html:49
msgid "Deleted"
msgstr ""

#: app/templates/audit_logs/list.html:53
msgid "Time Range"
msgstr ""

#: app/templates/audit_logs/list.html:64
#: app/templates/client_portal/time_entries.html:50
#: app/templates/deals/list.html:39
#: app/templates/inventory/adjustments/list.html:43
#: app/templates/inventory/movements/list.html:45
#: app/templates/inventory/purchase_orders/list.html:41
#: app/templates/inventory/reports/movement_history.html:57
#: app/templates/inventory/reports/turnover.html:29
#: app/templates/inventory/reports/valuation.html:39
#: app/templates/inventory/reservations/list.html:30
#: app/templates/inventory/stock_items/history.html:49
#: app/templates/inventory/stock_items/list.html:40
#: app/templates/inventory/stock_levels/list.html:38
#: app/templates/inventory/stock_levels/warehouse.html:36
#: app/templates/inventory/suppliers/list.html:32
#: app/templates/inventory/transfers/list.html:29
#: app/templates/leads/list.html:39
#: app/templates/project_templates/list.html:37
#: app/templates/reports/time_entries_report.html:78
#: app/templates/workforce/dashboard.html:36
msgid "Filter"
msgstr ""

#: app/templates/audit_logs/list.html:75 app/templates/audit_logs/list.html:87
#: app/templates/deals/view.html:192 app/templates/deals/view.html:202
msgid "Timestamp"
msgstr ""

#: app/templates/audit_logs/list.html:78 app/templates/audit_logs/list.html:100
msgid "Entity"
msgstr ""

#: app/templates/audit_logs/list.html:79 app/templates/audit_logs/list.html:133
#: app/templates/deals/view.html:195 app/templates/deals/view.html:207
msgid "Field"
msgstr ""

#: app/templates/audit_logs/list.html:80 app/templates/audit_logs/list.html:140
#: app/templates/budget/project_detail.html:171
#: app/templates/clients/view.html:30 app/templates/deals/view.html:196
#: app/templates/deals/view.html:210 app/templates/projects/view.html:54
#: app/templates/tasks/view.html:21
msgid "Change"
msgstr ""

#: app/templates/audit_logs/list.html:129 app/templates/audit_logs/view.html:76
#: app/templates/inventory/adjustments/form.html:46
#: app/templates/inventory/adjustments/list.html:60
#: app/templates/inventory/adjustments/list.html:81
#: app/templates/inventory/movements/form.html:104
#: app/templates/inventory/movements/list.html:61
#: app/templates/inventory/movements/list.html:144
#: app/templates/inventory/reports/movement_history.html:77
#: app/templates/inventory/reports/movement_history.html:164
#: app/templates/inventory/stock_items/history.html:68
#: app/templates/inventory/stock_items/history.html:150
#: app/templates/inventory/stock_items/view.html:243
#: app/templates/inventory/stock_items/view.html:259
#: app/templates/inventory/warehouses/view.html:133
#: app/templates/inventory/warehouses/view.html:153
#: app/templates/kiosk/dashboard.html:192
#: app/templates/workforce/dashboard.html:80
#: app/templates/workforce/dashboard.html:185
msgid "Reason"
msgstr ""

#: app/templates/audit_logs/view.html:22
msgid "Change Information"
msgstr ""

#: app/templates/audit_logs/view.html:85
msgid "Entity Context"
msgstr ""

#: app/templates/audit_logs/view.html:98
msgid "TimeEntry Created"
msgstr ""

#: app/templates/audit_logs/view.html:107
msgid "Entry Owner"
msgstr ""

#: app/templates/audit_logs/view.html:119
msgid "Field Change Details"
msgstr ""

#: app/templates/audit_logs/view.html:144
msgid "Full Entity State"
msgstr ""

#: app/templates/audit_logs/view.html:148
msgid "Before Change"
msgstr ""

#: app/templates/audit_logs/view.html:161
msgid "After Change"
msgstr ""

#: app/templates/audit_logs/view.html:178
msgid "Request Information"
msgstr ""

#: app/templates/auth/change_password.html:8
msgid "Update your password."
msgstr ""

#: app/templates/auth/change_password.html:21
msgid "Current Password"
msgstr ""

#: app/templates/auth/change_password.html:26
msgid "New Password"
msgstr ""

#: app/templates/auth/change_password.html:31
msgid "Confirm New Password"
msgstr ""

#: app/templates/auth/change_password.html:39
msgid "Change Password"
msgstr ""

#: app/templates/auth/edit_profile.html:87 app/templates/main/about.html:156
msgid "Security"
msgstr ""

#: app/templates/auth/edit_profile.html:89
msgid "Manage two-factor authentication for your account."
msgstr ""

#: app/templates/auth/edit_profile.html:92 app/templates/auth/two_factor.html:6
#: app/templates/auth/two_factor_setup.html:3
#: app/templates/auth/two_factor_setup.html:8
msgid "Two-factor authentication"
msgstr ""

#: app/templates/auth/edit_profile.html:183
msgid "Please fill both password fields or leave both empty"
msgstr ""

#: app/templates/auth/edit_profile.html:193
#: app/templates/client_portal/set_password.html:55
msgid "Password must be at least 8 characters long"
msgstr ""

#: app/templates/auth/edit_profile.html:202
msgid "Passwords do not match"
msgstr ""

#: app/templates/auth/forgot_password.html:6
msgid "Forgot password"
msgstr ""

#: app/templates/auth/forgot_password.html:19
msgid "Reset your password"
msgstr ""

#: app/templates/auth/forgot_password.html:21
msgid "Enter your username or email address. If an account matches and email is configured, we will send you a reset link."
msgstr ""

#: app/templates/auth/forgot_password.html:27
msgid "Username or email"
msgstr ""

#: app/templates/auth/forgot_password.html:30
msgid "your-username or you@example.com"
msgstr ""

#: app/templates/auth/forgot_password.html:32
msgid "Send reset link"
msgstr ""

#: app/templates/auth/forgot_password.html:35
#: app/templates/auth/reset_password.html:40
#: app/templates/auth/two_factor.html:35
msgid "Back to sign in"
msgstr ""

#: app/templates/auth/login.html:6 app/templates/errors/403.html:27
msgid "Login"
msgstr ""

#: app/templates/auth/login.html:31 app/templates/setup/initial_setup.html:32
msgid "Track time. Stay organized."
msgstr ""

#: app/templates/auth/login.html:47
msgid "Sign in to your account"
msgstr ""

#: app/templates/auth/login.html:50
msgid "Demo credentials"
msgstr ""

#: app/templates/auth/login.html:72
msgid "Forgot your password?"
msgstr ""

#: app/templates/auth/login.html:79
msgid "LDAP authentication is enabled"
msgstr ""

#: app/templates/auth/login.html:82 app/templates/client_portal/login.html:60
#: app/templates/kiosk/login.html:153
msgid "Sign in"
msgstr ""

#: app/templates/auth/login.html:85
msgid "Use the demo credentials above."
msgstr ""

#: app/templates/auth/login.html:87
msgid "Tip: Enter a new username to create your account."
msgstr ""

#: app/templates/auth/login.html:96
msgid "Or continue with"
msgstr ""

#: app/templates/auth/login.html:101
msgid "Single Sign-On"
msgstr ""

#: app/templates/auth/profile.html:6
msgid "Edit Profile"
msgstr ""

#: app/templates/auth/profile.html:53 app/templates/user/profile.html:75
msgid "Member Since"
msgstr ""

#: app/templates/auth/emails/password_reset.html:12
#: app/templates/auth/reset_password.html:6
msgid "Reset password"
msgstr ""

#: app/templates/auth/reset_password.html:19
msgid "Choose a new password"
msgstr ""

#: app/templates/auth/reset_password.html:21
msgid "Enter a new password for your account."
msgstr ""

#: app/templates/auth/reset_password.html:27
msgid "New password"
msgstr ""

#: app/templates/auth/reset_password.html:30
msgid "At least 8 characters"
msgstr ""

#: app/templates/auth/reset_password.html:32
msgid "Confirm password"
msgstr ""

#: app/templates/auth/reset_password.html:35
msgid "Repeat your new password"
msgstr ""

#: app/templates/auth/reset_password.html:37
msgid "Update password"
msgstr ""

#: app/templates/auth/two_factor.html:19
msgid "Enter authentication code"
msgstr ""

#: app/templates/auth/two_factor.html:21
msgid "Open your authenticator app and enter the 6-digit code."
msgstr ""

#: app/templates/auth/two_factor.html:27
#: app/templates/inventory/suppliers/list.html:41
#: app/templates/inventory/suppliers/list.html:53
#: app/templates/inventory/suppliers/view.html:26
#: app/templates/inventory/warehouses/list.html:22
#: app/templates/inventory/warehouses/list.html:33
#: app/templates/inventory/warehouses/view.html:26
#: app/templates/workforce/dashboard.html:255
msgid "Code"
msgstr ""

#: app/templates/auth/two_factor.html:32
msgid "Verify"
msgstr ""

#: app/templates/auth/two_factor_setup.html:10
msgid "Add an extra layer of security to your account using a TOTP authenticator app (Google Authenticator, Authy, 1Password, etc.)."
msgstr ""

#: app/templates/auth/two_factor_setup.html:18
msgid "Two-factor authentication is enabled for your account."
msgstr ""

#: app/templates/auth/two_factor_setup.html:26
msgid "Enter a current code to disable"
msgstr ""

#: app/templates/auth/two_factor_setup.html:29
msgid "Disable 2FA"
msgstr ""

#: app/templates/auth/two_factor_setup.html:34
msgid "Two-factor authentication is currently disabled."
msgstr ""

#: app/templates/auth/two_factor_setup.html:40
msgid "A secret will be generated when you enable 2FA."
msgstr ""

#: app/templates/auth/two_factor_setup.html:44
msgid "1) Add to your authenticator app"
msgstr ""

#: app/templates/auth/two_factor_setup.html:46
msgid "If you cannot scan a QR code, you can manually enter this secret:"
msgstr ""

#: app/templates/auth/two_factor_setup.html:52
msgid "Provisioning URI:"
msgstr ""

#: app/templates/auth/two_factor_setup.html:63
msgid "2) Verify and enable"
msgstr ""

#: app/templates/auth/two_factor_setup.html:64
msgid "Enter the 6-digit code"
msgstr ""

#: app/templates/auth/two_factor_setup.html:67
msgid "Enable 2FA"
msgstr ""

#: app/templates/auth/emails/password_reset.html:9
msgid "A password reset was requested for your TimeTracker account."
msgstr ""

#: app/templates/auth/emails/password_reset.html:16
msgid "If the button does not work, copy and paste this link into your browser:"
msgstr ""

#: app/templates/auth/emails/password_reset.html:20
msgid "If you did not request this, you can ignore this email."
msgstr ""

#: app/templates/budget/dashboard.html:12
msgid "Budget Alerts & Forecasting"
msgstr ""

#: app/templates/budget/dashboard.html:13
msgid "Monitor project budgets and forecast completion"
msgstr ""

#: app/templates/budget/dashboard.html:30
msgid "Unacknowledged Alerts"
msgstr ""

#: app/templates/budget/dashboard.html:39
msgid "Critical Alerts"
msgstr ""

#: app/templates/budget/dashboard.html:48
msgid "Projects with Budgets"
msgstr ""

#: app/templates/budget/dashboard.html:57
msgid "Warning Alerts"
msgstr ""

#: app/templates/budget/dashboard.html:66
#: app/templates/budget/project_detail.html:259
msgid "Active Alerts"
msgstr ""

#: app/templates/budget/dashboard.html:96
#: app/templates/budget/project_detail.html:284
msgid "Acknowledge"
msgstr ""

#: app/templates/budget/dashboard.html:110
msgid "Project Budget Status"
msgstr ""

#: app/templates/budget/dashboard.html:117
#: app/templates/projects/_projects_list.html:109
#: app/templates/projects/dashboard.html:130
#: app/templates/projects/dashboard.html:373
#: app/templates/projects/list.html:190
msgid "Budget"
msgstr ""

#: app/templates/budget/dashboard.html:118
#: app/templates/budget/project_detail.html:39
#: app/templates/projects/dashboard.html:373
#: app/templates/projects/view.html:264
msgid "Consumed"
msgstr ""

#: app/templates/budget/dashboard.html:119
#: app/templates/budget/project_detail.html:48
#: app/templates/main/dashboard.html:437
#: app/templates/projects/dashboard.html:134
#: app/templates/projects/dashboard.html:373
#: app/templates/projects/view.html:268
#: app/templates/workforce/dashboard.html:123
msgid "Remaining"
msgstr ""

#: app/templates/budget/dashboard.html:120 app/templates/projects/view.html:433
#: app/templates/projects/view.html:473 app/templates/tasks/_kanban.html:112
#: app/templates/tasks/_kanban.html:1281
#: app/templates/tasks/_tasks_list.html:93 app/templates/tasks/edit.html:159
#: app/templates/tasks/my_tasks.html:312 app/templates/tasks/overdue.html:62
#: app/templates/weekly_goals/index.html:95
#: app/templates/weekly_goals/index.html:205
#: app/templates/weekly_goals/view.html:82
msgid "Progress"
msgstr ""

#: app/templates/budget/dashboard.html:137 app/templates/projects/view.html:271
msgid "over"
msgstr ""

#: app/templates/budget/dashboard.html:153
#: app/templates/budget/project_detail.html:48
#: app/templates/budget/project_detail.html:65 app/utils/i18n_helpers.py:268
msgid "Over Budget"
msgstr ""

#: app/templates/budget/dashboard.html:157
#: app/templates/budget/project_detail.html:66
#: app/templates/projects/view.html:283 app/utils/i18n_helpers.py:275
#: app/utils/i18n_helpers.py:281
msgid "Critical"
msgstr ""

#: app/templates/budget/dashboard.html:165
#: app/templates/budget/project_detail.html:68
#: app/templates/projects/view.html:291
msgid "Healthy"
msgstr ""

#: app/templates/budget/dashboard.html:180
#: app/templates/budget/dashboard.html:197
msgid "No projects with budgets found"
msgstr ""

#: app/templates/budget/dashboard.html:237
#: app/templates/budget/project_detail.html:409
msgid "Alert acknowledged successfully"
msgstr ""

#: app/templates/budget/dashboard.html:242
#: app/templates/budget/project_detail.html:414
msgid "Failed to acknowledge alert"
msgstr ""

#: app/templates/budget/project_detail.html:8
msgid "Budget Analysis & Forecasting"
msgstr ""

#: app/templates/budget/project_detail.html:13
msgid "Back to Dashboard"
msgstr ""

#: app/templates/budget/project_detail.html:17
#: app/templates/projects/_projects_list.html:146
#: app/templates/projects/list.html:228 app/templates/quotes/view.html:182
msgid "View Project"
msgstr ""

#: app/templates/budget/project_detail.html:30
#: app/templates/projects/view.html:260
msgid "Total Budget"
msgstr ""

#: app/templates/budget/project_detail.html:80
msgid "Burn Rate Analysis"
msgstr ""

#: app/templates/budget/project_detail.html:85
msgid "Daily Burn Rate"
msgstr ""

#: app/templates/budget/project_detail.html:89
msgid "Weekly Burn Rate"
msgstr ""

#: app/templates/budget/project_detail.html:93
msgid "Monthly Burn Rate"
msgstr ""

#: app/templates/budget/project_detail.html:97
msgid "Period Total"
msgstr ""

#: app/templates/budget/project_detail.html:103
msgid "Based on last"
msgstr ""

#: app/templates/budget/project_detail.html:103
#: app/templates/inventory/suppliers/view.html:141
msgid "days"
msgstr ""

#: app/templates/budget/project_detail.html:108
msgid "No burn rate data available"
msgstr ""

#: app/templates/budget/project_detail.html:117
msgid "Completion Estimate"
msgstr ""

#: app/templates/budget/project_detail.html:122
msgid "Estimated Completion Date"
msgstr ""

#: app/templates/budget/project_detail.html:128
msgid "days remaining"
msgstr ""

#: app/templates/budget/project_detail.html:133
msgid "Confidence Level"
msgstr ""

#: app/templates/budget/project_detail.html:149
msgid "No completion estimate available"
msgstr ""

#: app/templates/budget/project_detail.html:160
msgid "Cost Trend Analysis"
msgstr ""

#: app/templates/budget/project_detail.html:168
msgid "Average"
msgstr ""

#: app/templates/budget/project_detail.html:185
msgid "Resource Allocation"
msgstr ""

#: app/templates/budget/project_detail.html:193
msgid "Total Cost"
msgstr ""

#: app/templates/budget/project_detail.html:197
#: app/templates/client_portal/projects.html:73
#: app/templates/main/help.html:205
#: app/templates/project_templates/create_project.html:36
#: app/templates/project_templates/view.html:44
#: app/templates/projects/create.html:71 app/templates/projects/edit.html:65
#: app/templates/quotes/accept.html:33
msgid "Hourly Rate"
msgstr ""

#: app/templates/budget/project_detail.html:205
msgid "Team Member"
msgstr ""

#: app/templates/budget/project_detail.html:207
#: app/templates/budget/project_detail.html:314
#: app/templates/budget/project_detail.html:344
#: app/templates/inventory/purchase_orders/form.html:149
msgid "Cost"
msgstr ""

#: app/templates/budget/project_detail.html:208
msgid "Hours %"
msgstr ""

#: app/templates/budget/project_detail.html:209
msgid "Cost %"
msgstr ""

#: app/templates/budget/project_detail.html:210
#: app/templates/clients/view.html:586
#: app/templates/components/support_modal.html:29
#: app/templates/projects/time_entries_overview.html:23
#: app/templates/timer/time_entries_overview.html:25
msgid "Entries"
msgstr ""

#: app/templates/calendar/event_detail.html:41
msgid "Date & Time"
msgstr ""

#: app/templates/calendar/event_detail.html:77
#: app/templates/calendar/event_form.html:94
#: app/templates/inventory/stock_items/view.html:133
#: app/templates/inventory/stock_items/view.html:152
#: app/templates/inventory/stock_levels/item.html:27
#: app/templates/inventory/stock_levels/item.html:44
#: app/templates/inventory/stock_levels/list.html:52
#: app/templates/inventory/stock_levels/list.html:72
#: app/templates/inventory/warehouses/view.html:89
#: app/templates/inventory/warehouses/view.html:109
msgid "Location"
msgstr ""

#: app/templates/calendar/event_detail.html:136
#: app/templates/calendar/event_form.html:109
#: app/templates/calendar/event_form.html:155
msgid "Reminder"
msgstr ""

#: app/templates/calendar/event_detail.html:139
msgid "minutes before"
msgstr ""

#: app/templates/calendar/event_detail.html:141
msgid "hours before"
msgstr ""

#: app/templates/calendar/event_detail.html:143
msgid "days before"
msgstr ""

#: app/templates/calendar/event_detail.html:155
#: app/templates/timer/calendar.html:43
msgid "Recurring"
msgstr ""

#: app/templates/calendar/event_detail.html:159
msgid "Until"
msgstr ""

#: app/templates/calendar/event_detail.html:173
#: app/templates/client_portal/issue_detail.html:89
#: app/templates/issues/view.html:171
msgid "Last Updated"
msgstr ""

#: app/templates/calendar/event_detail.html:182
msgid "Back to Calendar"
msgstr ""

#: app/templates/calendar/event_detail.html:191
msgid "Delete Event"
msgstr ""

#: app/templates/calendar/event_detail.html:192
msgid "Are you sure you want to delete this event? This action cannot be undone."
msgstr ""

#: app/templates/calendar/event_form.html:2
#: app/templates/calendar/event_form.html:10
msgid "Edit Event"
msgstr ""

#: app/templates/calendar/event_form.html:2
#: app/templates/calendar/event_form.html:10
#: app/templates/calendar/view.html:49 app/templates/timer/calendar.html:40
msgid "New Event"
msgstr ""

#: app/templates/calendar/event_form.html:19
#: app/templates/client_portal/new_issue.html:26
#: app/templates/client_portal/quote_detail.html:34
#: app/templates/client_portal/quotes.html:26
#: app/templates/client_portal/quotes.html:42
#: app/templates/contacts/form.html:52 app/templates/contacts/list.html:28
#: app/templates/contacts/list.html:46 app/templates/contacts/view.html:48
#: app/templates/expenses/dashboard.html:190
#: app/templates/expenses/list.html:297 app/templates/invoices/edit.html:160
#: app/templates/issues/edit.html:24 app/templates/issues/list.html:93
#: app/templates/issues/list.html:106 app/templates/issues/new.html:24
#: app/templates/leads/form.html:50 app/templates/leads/view.html:61
#: app/templates/quotes/_edit_quote_form_scripts.html:198
#: app/templates/quotes/_quotes_list.html:34
#: app/templates/quotes/_quotes_list.html:51
#: app/templates/quotes/accept.html:18 app/templates/quotes/create.html:36
#: app/templates/quotes/create.html:94 app/templates/quotes/edit.html:32
#: app/templates/quotes/edit.html:142 app/templates/quotes/edit.html:157
#: app/templates/timer/calendar.html:850
#: app/utils/pdf_generator_fallback.py:552
msgid "Title"
msgstr ""

#: app/templates/calendar/event_form.html:40 app/templates/gantt/view.html:37
#: app/templates/import_export/index.html:225
#: app/templates/import_export/index.html:263
#: app/templates/projects/time_entries_overview.html:31
#: app/templates/reports/builder.html:86
#: app/templates/reports/time_entries_report.html:12
#: app/templates/timer/bulk_entry.html:137
#: app/templates/timer/calendar.html:166
#: app/templates/timer/edit_timer.html:260
#: app/templates/timer/manual_entry.html:97
#: app/templates/timer/time_entries_overview.html:79
msgid "Start Date"
msgstr ""

#: app/templates/calendar/event_form.html:50
#: app/templates/reports/user_report.html:86
#: app/templates/timer/bulk_entry.html:170
#: app/templates/timer/calendar.html:170
#: app/templates/timer/edit_timer.html:268
#: app/templates/timer/manual_entry.html:107
#: app/templates/timer/view_timer.html:28
msgid "Start Time"
msgstr ""

#: app/templates/calendar/event_form.html:61 app/templates/gantt/view.html:41
#: app/templates/import_export/index.html:230
#: app/templates/import_export/index.html:268
#: app/templates/projects/time_entries_overview.html:35
#: app/templates/recurring_tasks/form.html:79
#: app/templates/reports/builder.html:90
#: app/templates/reports/time_entries_report.html:18
#: app/templates/timer/bulk_entry.html:141
#: app/templates/timer/calendar.html:177
#: app/templates/timer/edit_timer.html:280
#: app/templates/timer/manual_entry.html:101
#: app/templates/timer/time_entries_overview.html:83
msgid "End Date"
msgstr ""

#: app/templates/calendar/event_form.html:71
#: app/templates/reports/user_report.html:87
#: app/templates/timer/bulk_entry.html:179
#: app/templates/timer/calendar.html:181
#: app/templates/timer/edit_timer.html:288
#: app/templates/timer/manual_entry.html:111
#: app/templates/timer/view_timer.html:34
msgid "End Time"
msgstr ""

#: app/templates/calendar/event_form.html:88
msgid "All Day Event"
msgstr ""

#: app/templates/calendar/event_form.html:104
msgid "Event Type"
msgstr ""

#: app/templates/calendar/event_form.html:107
#: app/templates/contacts/communication_form.html:32
#: app/templates/deals/activity_form.html:30
#: app/templates/leads/activity_form.html:30
msgid "Meeting"
msgstr ""

#: app/templates/calendar/event_form.html:108
msgid "Appointment"
msgstr ""

#: app/templates/calendar/event_form.html:110
msgid "Deadline"
msgstr ""

#: app/templates/calendar/event_form.html:118
#: app/templates/calendar/event_form.html:131
#: app/templates/calendar/event_form.html:144
msgid "-- None --"
msgstr ""

#: app/templates/calendar/event_form.html:157
msgid "No reminder"
msgstr ""

#: app/templates/calendar/event_form.html:158
msgid "5 minutes before"
msgstr ""

#: app/templates/calendar/event_form.html:159
msgid "15 minutes before"
msgstr ""

#: app/templates/calendar/event_form.html:160
msgid "30 minutes before"
msgstr ""

#: app/templates/calendar/event_form.html:161
msgid "1 hour before"
msgstr ""

#: app/templates/calendar/event_form.html:162
msgid "1 day before"
msgstr ""

#: app/templates/calendar/event_form.html:168
#: app/templates/kanban/columns.html:51
#: app/templates/kanban/create_column.html:60
#: app/templates/kanban/edit_column.html:52
msgid "Color"
msgstr ""

#: app/templates/calendar/event_form.html:175
msgid "Choose a color for this event"
msgstr ""

#: app/templates/calendar/event_form.html:187
msgid "Private Event"
msgstr ""

#: app/templates/calendar/event_form.html:189
msgid "Private events are only visible to you"
msgstr ""

#: app/templates/calendar/event_form.html:194
msgid "Recurring Event"
msgstr ""

#: app/templates/calendar/event_form.html:203
msgid "This is a recurring event"
msgstr ""

#: app/templates/calendar/event_form.html:209
msgid "Recurrence Pattern"
msgstr ""

#: app/templates/calendar/event_form.html:216
msgid "Use RRULE format (e.g., FREQ=WEEKLY;BYDAY=MO,WE,FR)"
msgstr ""

#: app/templates/calendar/event_form.html:220
msgid "Recurrence End Date"
msgstr ""

#: app/templates/calendar/event_form.html:234
msgid "Update Event"
msgstr ""

#: app/templates/calendar/event_form.html:234
msgid "Create Event"
msgstr ""

#: app/templates/calendar/integrations.html:4
msgid "Calendar Integrations"
msgstr ""

#: app/templates/calendar/integrations.html:56
msgid "Last synced"
msgstr ""

#: app/templates/calendar/integrations.html:71
msgid "Manage Integration"
msgstr ""

#: app/templates/calendar/integrations.html:78
msgid "Are you sure you want to disconnect this integration?"
msgstr ""

#: app/templates/calendar/integrations.html:78
msgid "Disconnect"
msgstr ""

#: app/templates/calendar/integrations.html:91
msgid "No Calendar Integrations"
msgstr ""

#: app/templates/calendar/integrations.html:92
msgid "Connect your calendar to automatically sync time entries and events."
msgstr ""

#: app/templates/calendar/integrations.html:93
#: app/templates/integrations/manage.html:714
msgid "Connect Google Calendar"
msgstr ""

#: app/templates/calendar/integrations.html:99
msgid "How Calendar Integration Works"
msgstr ""

#: app/templates/calendar/integrations.html:101
msgid "Time entries are automatically synced to your calendar"
msgstr ""

#: app/templates/calendar/integrations.html:102
msgid "Calendar events can be converted to time entries"
msgstr ""

#: app/templates/calendar/integrations.html:103
msgid "Bidirectional sync keeps everything in sync"
msgstr ""

#: app/templates/calendar/view.html:18
msgid "View and manage your events, tasks, and time entries"
msgstr ""

#: app/templates/calendar/view.html:31 app/templates/timer/calendar.html:32
#: app/templates/user/settings.html:475
msgid "Day"
msgstr ""

#: app/templates/calendar/view.html:36
#: app/templates/reports/week_in_review.html:21
#: app/templates/timer/calendar.html:33 app/templates/user/settings.html:476
#: app/templates/weekly_goals/index.html:79
msgid "Week"
msgstr ""

#: app/templates/calendar/view.html:41 app/templates/timer/calendar.html:34
#: app/templates/user/settings.html:477
msgid "Month"
msgstr ""

#: app/templates/calendar/view.html:62 app/templates/reports/index.html:76
#: app/templates/timer/calendar.html:29
msgid "Today"
msgstr ""

#: app/templates/calendar/view.html:90
msgid "Calendar colors"
msgstr ""

#: app/templates/calendar/view.html:106
msgid "Legend"
msgstr ""

#: app/templates/calendar/view.html:123
msgid "Loading calendar..."
msgstr ""

#: app/templates/calendar/view.html:133 app/templates/timer/calendar.html:807
msgid "Event Details"
msgstr ""

#: app/templates/calendar/view.html:136 app/templates/timer/calendar.html:220
#: app/templates/timer/calendar.html:818
msgid "Go to all details"
msgstr ""

#: app/templates/chat/channel.html:4 app/templates/chat/channel.html:8
#: app/templates/chat/index.html:4 app/templates/chat/index.html:8
#: app/templates/chat/index.html:13
msgid "Team Chat"
msgstr ""

#: app/templates/chat/channel.html:15
msgid "Team chat channel"
msgstr ""

#: app/templates/chat/channel.html:56
#: app/templates/components/persistent_chat_widget.html:107
msgid "Type a message..."
msgstr ""

#: app/templates/chat/channel.html:75
msgid "Channel Info"
msgstr ""

#: app/templates/chat/channel.html:84
msgid "Members"
msgstr ""

#: app/templates/chat/channel.html:126
msgid "Channel Settings"
msgstr ""

#: app/templates/chat/channel.html:252
msgid "Upload Attachment"
msgstr ""

#: app/templates/chat/channel.html:259
msgid "Select File"
msgstr ""

#: app/templates/chat/channel.html:261
msgid "Maximum file size: 10 MB"
msgstr ""

#: app/templates/chat/channel.html:264
msgid "Selected:"
msgstr ""

#: app/templates/chat/channel.html:271 app/templates/clients/view.html:208
#: app/templates/clients/view.html:235 app/templates/comments/_comment.html:117
#: app/templates/projects/view.html:335 app/templates/projects/view.html:362
msgid "Upload"
msgstr ""

#: app/templates/chat/channel.html:303
msgid "Please select a file"
msgstr ""

#: app/templates/chat/channel.html:309
msgid "File size exceeds 10 MB limit"
msgstr ""

#: app/templates/chat/channel.html:348 app/templates/chat/channel.html:355
msgid "Failed to upload attachment"
msgstr ""

#: app/templates/chat/index.html:14
msgid "Communicate with your team"
msgstr ""

#: app/templates/chat/index.html:22
#: app/templates/components/persistent_chat_widget.html:53
msgid "Channels"
msgstr ""

#: app/templates/chat/index.html:48
#: app/templates/components/persistent_chat_widget.html:58
msgid "Direct Messages"
msgstr ""

#: app/templates/chat/index.html:89
#: app/templates/components/persistent_chat_widget.html:71
msgid "Select a channel to start chatting"
msgstr ""

#: app/templates/chat/index.html:100
msgid "Create Channel"
msgstr ""

#: app/templates/chat/index.html:107
msgid "Channel Name"
msgstr ""

#: app/templates/chat/index.html:117
msgid "Private channel"
msgstr ""

#: app/templates/client_notes/edit.html:3
#: app/templates/client_notes/edit.html:9
msgid "Edit Client Note"
msgstr ""

#: app/templates/client_notes/edit.html:12 app/templates/clients/edit.html:8
msgid "Back to Client"
msgstr ""

#: app/templates/client_notes/edit.html:24
msgid "Client:"
msgstr ""

#: app/templates/client_notes/edit.html:38
msgid "Created on"
msgstr ""

#: app/templates/client_notes/edit.html:41 app/templates/comments/edit.html:58
msgid "Last edited on"
msgstr ""

#: app/templates/client_notes/edit.html:54 app/templates/clients/view.html:435
msgid "Note Content"
msgstr ""

#: app/templates/client_notes/edit.html:64
msgid "Internal note visible only to your team."
msgstr ""

#: app/templates/client_notes/edit.html:77 app/templates/clients/view.html:453
msgid "Mark as important"
msgstr ""

#: app/templates/client_portal/activity_feed.html:4
#: app/templates/client_portal/activity_feed.html:9
#: app/templates/client_portal/activity_feed.html:14
msgid "Activity Feed"
msgstr ""

#: app/templates/client_portal/activity_feed.html:4
#: app/templates/client_portal/activity_feed.html:8
#: app/templates/client_portal/approvals.html:4
#: app/templates/client_portal/approvals.html:8
#: app/templates/client_portal/base.html:6
#: app/templates/client_portal/base.html:13
#: app/templates/client_portal/base.html:20
#: app/templates/client_portal/base.html:240
#: app/templates/client_portal/base.html:324
#: app/templates/client_portal/dashboard.html:4
#: app/templates/client_portal/dashboard.html:8
#: app/templates/client_portal/dashboard.html:13
#: app/templates/client_portal/documents.html:4
#: app/templates/client_portal/documents.html:8
#: app/templates/client_portal/error.html:4
#: app/templates/client_portal/invoice_detail.html:4
#: app/templates/client_portal/invoice_detail.html:8
#: app/templates/client_portal/invoices.html:4
#: app/templates/client_portal/invoices.html:8
#: app/templates/client_portal/issue_detail.html:4
#: app/templates/client_portal/issue_detail.html:8
#: app/templates/client_portal/issues.html:4
#: app/templates/client_portal/issues.html:8
#: app/templates/client_portal/login.html:31
#: app/templates/client_portal/login.html:38
#: app/templates/client_portal/new_issue.html:4
#: app/templates/client_portal/new_issue.html:8
#: app/templates/client_portal/notifications.html:4
#: app/templates/client_portal/notifications.html:8
#: app/templates/client_portal/project_comments.html:4
#: app/templates/client_portal/project_comments.html:8
#: app/templates/client_portal/projects.html:4
#: app/templates/client_portal/projects.html:8
#: app/templates/client_portal/quote_detail.html:4
#: app/templates/client_portal/quote_detail.html:8
#: app/templates/client_portal/quotes.html:4
#: app/templates/client_portal/quotes.html:8
#: app/templates/client_portal/reports.html:4
#: app/templates/client_portal/reports.html:8
#: app/templates/client_portal/set_password.html:6
#: app/templates/client_portal/set_password.html:29
#: app/templates/client_portal/time_entries.html:4
#: app/templates/client_portal/time_entries.html:8
msgid "Client Portal"
msgstr ""

#: app/templates/client_portal/activity_feed.html:15
msgid "Recent project activities"
msgstr ""

#: app/templates/client_portal/activity_feed.html:69
msgid "View details"
msgstr ""

#: app/templates/client_portal/activity_feed.html:83
msgid "No Activity"
msgstr ""

#: app/templates/client_portal/activity_feed.html:85
msgid "No recent activity to display. Activity will appear here as projects are updated and time entries are logged."
msgstr ""

#: app/templates/client_portal/approvals.html:9
#: app/templates/client_portal/base.html:266
#: app/templates/client_portal/base.html:351
msgid "Approvals"
msgstr ""

#: app/templates/client_portal/approvals.html:30
#: app/templates/contacts/communication_form.html:60
#: app/templates/deals/activity_form.html:37
#: app/templates/integrations/view.html:57
#: app/templates/integrations/view.html:88
#: app/templates/leads/activity_form.html:37 app/utils/i18n_helpers.py:142
#: app/utils/i18n_helpers.py:153 app/utils/i18n_helpers.py:220
#: app/utils/i18n_helpers.py:232
msgid "Pending"
msgstr ""

#: app/templates/client_portal/approvals.html:43 app/utils/i18n_helpers.py:143
#: app/utils/i18n_helpers.py:154
msgid "Approved"
msgstr ""

#: app/templates/client_portal/approvals.html:53
#: app/templates/quotes/_quotes_list.html:68 app/templates/quotes/list.html:84
#: app/templates/quotes/view.html:77 app/utils/i18n_helpers.py:144
#: app/utils/i18n_helpers.py:155
msgid "Rejected"
msgstr ""

#: app/templates/client_portal/approvals.html:63
#: app/templates/client_portal/invoices.html:30
#: app/templates/client_portal/issues.html:23
#: app/templates/client_portal/notifications.html:31
#: app/templates/components/multi_select.html:82
#: app/templates/components/multi_select.html:206
#: app/templates/inventory/movements/list.html:37
#: app/templates/inventory/purchase_orders/list.html:23
#: app/templates/inventory/reservations/list.html:22
#: app/templates/inventory/suppliers/list.html:28
#: app/templates/issues/list.html:38 app/templates/issues/list.html:49
#: app/templates/issues/list.html:63 app/templates/issues/list.html:72
#: app/templates/quotes/list.html:80
#: app/templates/reports/time_entries_report.html:71
#: app/templates/timer/time_entries_overview.html:104
#: app/templates/timer/time_entries_overview.html:112
msgid "All"
msgstr ""

#: app/templates/client_portal/approvals.html:90
msgid "Requested on"
msgstr ""

#: app/templates/client_portal/approvals.html:160
msgid "Request Comment"
msgstr ""

#: app/templates/client_portal/approvals.html:172
#: app/templates/client_portal/notifications.html:108
#: app/templates/integrations/manage.html:634
#: app/templates/tasks/my_tasks.html:330
#: app/templates/weekly_goals/index.html:122
msgid "View Details"
msgstr ""

#: app/templates/client_portal/approvals.html:186
msgid "No Approvals"
msgstr ""

#: app/templates/client_portal/approvals.html:189
msgid "You have no pending time entry approvals. All caught up!"
msgstr ""

#: app/templates/client_portal/approvals.html:191
msgid "No approvals found for this status."
msgstr ""

#: app/templates/client_portal/base.html:277
#: app/templates/client_portal/base.html:362
#: app/templates/client_portal/notifications.html:4
#: app/templates/client_portal/notifications.html:9
#: app/templates/client_portal/notifications.html:14
msgid "Notifications"
msgstr ""

#: app/templates/client_portal/base.html:284
#: app/templates/partials/_bottom_nav.html:17
#: app/templates/partials/_bottom_nav.html:84
#: app/templates/partials/_bottom_nav.html:88
#: app/templates/projects/view.html:49
msgid "More"
msgstr ""

#: app/templates/client_portal/base.html:290
#: app/templates/client_portal/base.html:369
#: app/templates/client_portal/documents.html:4
#: app/templates/client_portal/documents.html:9
#: app/templates/client_portal/documents.html:14
msgid "Documents"
msgstr ""

#: app/templates/client_portal/base.html:296
#: app/templates/client_portal/base.html:375 app/templates/deals/view.html:143
#: app/templates/leads/view.html:136
msgid "Activity"
msgstr ""

#: app/templates/client_portal/base.html:307
msgid "Toggle menu"
msgstr ""

#: app/templates/client_portal/base.html:418
msgid "Approval update"
msgstr ""

#: app/templates/client_portal/base.html:418
msgid "A time entry approval was requested."
msgstr ""

#: app/templates/client_portal/base.html:418
msgid "An approval was updated."
msgstr ""

#: app/templates/client_portal/dashboard.html:14
#, python-format
msgid "Welcome, %(client_name)s"
msgstr ""

#: app/templates/client_portal/dashboard.html:21
#: app/templates/client_portal/dashboard.html:67
msgid "Customize dashboard"
msgstr ""

#: app/templates/client_portal/dashboard.html:68
msgid "Choose which widgets to show and their order."
msgstr ""

#: app/templates/client_portal/dashboard.html:74
msgid "Statistics cards"
msgstr ""

#: app/templates/client_portal/dashboard.html:75
msgid "Pending actions"
msgstr ""

#: app/templates/client_portal/dashboard.html:77
msgid "Recent invoices"
msgstr ""

#: app/templates/client_portal/dashboard.html:78
msgid "Recent time entries"
msgstr ""

#: app/templates/client_portal/dashboard.html:127
msgid "Select at least one widget."
msgstr ""

#: app/templates/client_portal/dashboard.html:147
msgid "Failed to save."
msgstr ""

#: app/templates/client_portal/documents.html:15
msgid "View and download project documents"
msgstr ""

#: app/templates/client_portal/documents.html:41
msgid "Client Document"
msgstr ""

#: app/templates/client_portal/documents.html:67
msgid "Download"
msgstr ""

#: app/templates/client_portal/documents.html:80
msgid "No Documents"
msgstr ""

#: app/templates/client_portal/documents.html:82
msgid "No documents have been shared with you yet. Documents will appear here once they are uploaded and made visible to clients."
msgstr ""

#: app/templates/client_portal/error.html:18
msgid "An error occurred"
msgstr ""

#: app/templates/client_portal/error.html:47 app/templates/errors/400.html:23
#: app/templates/errors/403.html:24 app/templates/errors/404.html:21
#: app/templates/errors/500.html:24 app/templates/errors/generic.html:24
#: app/templates/errors/generic.html:42 app/templates/main/help.html:538
msgid "Go to Dashboard"
msgstr ""

#: app/templates/client_portal/error.html:52
msgid "Login to Client Portal"
msgstr ""

#: app/templates/client_portal/error.html:59 app/templates/errors/400.html:26
#: app/templates/errors/404.html:24 app/templates/errors/generic.html:28
#: app/templates/errors/generic.html:45
msgid "Go Back"
msgstr ""

#: app/templates/client_portal/error.html:69
msgid "If you believe you should have access to the client portal, please contact your administrator or use the login link above."
msgstr ""

#: app/templates/client_portal/invoice_detail.html:16
#: app/templates/client_portal/invoice_detail.html:33
#: app/templates/payments/create.html:44
msgid "Invoice Details"
msgstr ""

#: app/templates/client_portal/invoice_detail.html:34
#: app/templates/client_portal/invoices.html:72
#: app/templates/invoices/edit.html:305
#: app/templates/invoices/pdf_default.html:57
#: app/templates/recurring_invoices/view.html:108
#: app/utils/pdf_generator.py:1127
msgid "Issue Date"
msgstr ""

#: app/templates/client_portal/invoice_detail.html:45
#, python-format
msgid "This invoice is %(days)d days overdue."
msgstr ""

#: app/templates/client_portal/invoice_detail.html:52
#: app/templates/invoices/edit.html:60 app/utils/pdf_generator_fallback.py:237
msgid "Invoice Items"
msgstr ""

#: app/templates/client_portal/invoice_detail.html:58
#: app/templates/client_portal/invoice_detail.html:67
#: app/templates/client_portal/quote_detail.html:70
#: app/templates/client_portal/quote_detail.html:88
#: app/templates/inventory/adjustments/list.html:59
#: app/templates/inventory/adjustments/list.html:78
#: app/templates/inventory/movements/form.html:62
#: app/templates/inventory/movements/list.html:58
#: app/templates/inventory/movements/list.html:102
#: app/templates/inventory/reports/movement_history.html:74
#: app/templates/inventory/reports/movement_history.html:118
#: app/templates/inventory/reports/valuation.html:61
#: app/templates/inventory/reports/valuation.html:81
#: app/templates/inventory/reservations/list.html:41
#: app/templates/inventory/reservations/list.html:63
#: app/templates/inventory/stock_items/history.html:65
#: app/templates/inventory/stock_items/history.html:104
#: app/templates/inventory/stock_items/view.html:178
#: app/templates/inventory/stock_items/view.html:189
#: app/templates/inventory/stock_items/view.html:242
#: app/templates/inventory/stock_items/view.html:256
#: app/templates/inventory/transfers/form.html:50
#: app/templates/inventory/transfers/list.html:42
#: app/templates/inventory/transfers/list.html:69
#: app/templates/inventory/warehouses/view.html:132
#: app/templates/inventory/warehouses/view.html:150
#: app/templates/invoices/edit.html:75 app/templates/invoices/edit.html:118
#: app/templates/invoices/edit.html:120 app/templates/invoices/edit.html:541
#: app/templates/kiosk/dashboard.html:172
#: app/templates/kiosk/dashboard.html:263
#: app/templates/projects/add_good.html:45
#: app/templates/projects/edit_good.html:45
#: app/templates/projects/goods.html:41 app/templates/projects/goods.html:63
#: app/templates/quotes/pdf_default.html:96 app/templates/quotes/view.html:103
#: app/utils/pdf_generator_fallback.py:575
msgid "Quantity"
msgstr ""

#: app/templates/client_portal/invoice_detail.html:59
#: app/templates/client_portal/invoice_detail.html:68
#: app/templates/client_portal/quote_detail.html:71
#: app/templates/client_portal/quote_detail.html:89
#: app/templates/invoices/edit.html:76 app/templates/invoices/edit.html:124
#: app/templates/invoices/edit.html:544
#: app/templates/invoices/pdf_default.html:90
#: app/templates/projects/add_good.html:50
#: app/templates/projects/edit_good.html:50
#: app/templates/projects/goods.html:42 app/templates/projects/goods.html:64
#: app/templates/quotes/pdf_default.html:97 app/templates/quotes/view.html:104
#: app/utils/pdf_generator.py:1156 app/utils/pdf_generator_fallback.py:240
#: app/utils/pdf_generator_fallback.py:575
msgid "Unit Price"
msgstr ""

#: app/templates/client_portal/invoice_detail.html:111
#: app/templates/payment_gateways/pay.html:3
#: app/templates/payment_gateways/pay.html:8
msgid "Pay Invoice"
msgstr ""

#: app/templates/client_portal/invoice_detail.html:115
#: app/templates/invoices/create.html:6
msgid "Back to Invoices"
msgstr ""

#: app/templates/client_portal/invoices.html:15
#, python-format
msgid "Invoices for %(client_name)s"
msgstr ""

#: app/templates/client_portal/invoices.html:50
#: app/templates/invoices/_invoices_list.html:79
#: app/templates/timer/_time_entries_list.html:168
#: app/templates/timer/time_entries_overview.html:106
#: app/templates/timer/time_entries_overview.html:199
#: app/templates/timer/view_timer.html:144 app/utils/i18n_helpers.py:88
#: app/utils/i18n_helpers.py:99
msgid "Unpaid"
msgstr ""

#: app/templates/client_portal/invoices.html:60
#: app/templates/invoices/list.html:132 app/templates/tasks/_kanban.html:103
#: app/templates/tasks/overdue.html:35 app/utils/i18n_helpers.py:67
#: app/utils/i18n_helpers.py:79
msgid "Overdue"
msgstr ""

#: app/templates/client_portal/invoices.html:74
#: app/templates/client_portal/quotes.html:29
#: app/templates/client_portal/quotes.html:54
#: app/templates/expenses/dashboard.html:200
#: app/templates/expenses/list.html:310 app/templates/invoices/edit.html:163
#: app/templates/invoices/edit.html:193 app/templates/payments/list.html:147
#: app/templates/projects/add_cost.html:58
#: app/templates/projects/dashboard.html:375
#: app/templates/projects/edit_cost.html:65
#: app/templates/quotes/_quotes_list.html:36
#: app/templates/quotes/_quotes_list.html:53
#: app/templates/quotes/create.html:97 app/templates/quotes/edit.html:145
#: app/templates/recurring_invoices/view.html:109
msgid "Amount"
msgstr ""

#: app/templates/client_portal/invoices.html:103
msgid "days overdue"
msgstr ""

#: app/templates/client_portal/invoices.html:153
#: app/templates/client_portal/widgets/invoices.html:45
msgid "No invoices found"
msgstr ""

#: app/templates/client_portal/invoices.html:155
msgid "No paid invoices"
msgstr ""

#: app/templates/client_portal/invoices.html:157
msgid "No unpaid invoices"
msgstr ""

#: app/templates/client_portal/invoices.html:159
msgid "No overdue invoices"
msgstr ""

#: app/templates/client_portal/invoices.html:164
msgid "There are no invoices available at this time. Invoices will appear here once they are created."
msgstr ""

#: app/templates/client_portal/invoices.html:166
msgid "There are no invoices matching this filter. Try selecting a different status."
msgstr ""

#: app/templates/client_portal/invoices.html:173
msgid "View All Invoices"
msgstr ""

#: app/templates/client_portal/issue_detail.html:16
#: app/templates/issues/view.html:8
#, python-format
msgid "Issue #%(id)s"
msgstr ""

#: app/templates/client_portal/issue_detail.html:29
msgid "No description provided."
msgstr ""

#: app/templates/client_portal/issue_detail.html:51
#: app/templates/client_portal/new_issue.html:52
#: app/templates/issues/edit.html:48 app/templates/issues/list.html:47
#: app/templates/issues/list.html:97 app/templates/issues/list.html:123
#: app/templates/issues/new.html:42 app/templates/issues/view.html:111
#: app/templates/project_templates/create.html:79
#: app/templates/project_templates/edit.html:82
#: app/templates/project_templates/edit.html:108
#: app/templates/projects/view.html:429 app/templates/projects/view.html:441
#: app/templates/recurring_tasks/form.html:91
#: app/templates/tasks/_kanban.html:1235
#: app/templates/tasks/_tasks_list.html:60 app/templates/tasks/create.html:59
#: app/templates/tasks/edit.html:69 app/templates/tasks/my_tasks.html:139
msgid "Priority"
msgstr ""

#: app/templates/client_portal/issue_detail.html:70
#: app/templates/issues/view.html:41
msgid "Linked Task"
msgstr ""

#: app/templates/client_portal/issue_detail.html:77
#: app/templates/issues/edit.html:70 app/templates/issues/list.html:70
#: app/templates/issues/list.html:98 app/templates/issues/list.html:132
#: app/templates/issues/new.html:64 app/templates/issues/view.html:138
#: app/templates/tasks/_kanban.html:1263
msgid "Assigned To"
msgstr ""

#: app/templates/client_portal/issue_detail.html:96
#: app/templates/client_portal/issues.html:35 app/templates/issues/edit.html:41
#: app/templates/issues/list.html:41 app/templates/issues/view.html:102
#: app/templates/issues/view.html:178
msgid "Resolved"
msgstr ""

#: app/templates/client_portal/issue_detail.html:107
#: app/templates/issues/view.html:189
msgid "Back to Issues"
msgstr ""

#: app/templates/client_portal/issues.html:14
msgid "Issue Reports"
msgstr ""

#: app/templates/client_portal/issues.html:15
#, python-format
msgid "Report and track issues for %(client_name)s"
msgstr ""

#: app/templates/client_portal/issues.html:27 app/templates/deals/list.html:24
#: app/templates/issues/edit.html:39 app/templates/issues/list.html:39
#: app/templates/issues/view.html:100
msgid "Open"
msgstr ""

#: app/templates/client_portal/issues.html:39 app/templates/issues/edit.html:42
#: app/templates/issues/list.html:42 app/templates/issues/view.html:103
msgid "Closed"
msgstr ""

#: app/templates/client_portal/issues.html:43
#: app/templates/client_portal/new_issue.html:4
#: app/templates/client_portal/new_issue.html:10
#: app/templates/client_portal/new_issue.html:15
msgid "Report New Issue"
msgstr ""

#: app/templates/client_portal/issues.html:93
msgid "No issues found."
msgstr ""

#: app/templates/client_portal/login.html:6
msgid "Client Portal Login"
msgstr ""

#: app/templates/client_portal/login.html:32
msgid "View your projects and invoices"
msgstr ""

#: app/templates/client_portal/login.html:40
msgid "Sign in to Client Portal"
msgstr ""

#: app/templates/client_portal/login.html:41
msgid "Enter your portal credentials to access your projects and invoices"
msgstr ""

#: app/templates/client_portal/login.html:51
#: app/templates/clients/edit.html:124
msgid "portal_username"
msgstr ""

#: app/templates/client_portal/login.html:57
#: app/templates/client_portal/set_password.html:53
msgid "Enter your password"
msgstr ""

#: app/templates/client_portal/new_issue.html:16
msgid "Report a bug or issue you've encountered"
msgstr ""

#: app/templates/client_portal/new_issue.html:29
msgid "Brief description of the issue"
msgstr ""

#: app/templates/client_portal/new_issue.html:36
msgid "Detailed description of the issue, steps to reproduce, etc."
msgstr ""

#: app/templates/client_portal/new_issue.html:44
#: app/templates/main/dashboard.html:735
#: app/templates/timer/manual_entry.html:64
#: app/templates/timer/timer_page.html:141
msgid "Select a project (optional)"
msgstr ""

#: app/templates/client_portal/new_issue.html:55
#: app/templates/issues/edit.html:50 app/templates/issues/list.html:50
#: app/templates/issues/new.html:44 app/templates/issues/view.html:116
#: app/templates/project_templates/create.html:81
#: app/templates/project_templates/edit.html:84
#: app/templates/project_templates/edit.html:110
#: app/templates/recurring_tasks/form.html:93
#: app/templates/tasks/create.html:61 app/templates/tasks/create.html:82
#: app/templates/tasks/create.html:470 app/templates/tasks/edit.html:71
#: app/templates/tasks/edit.html:650 app/templates/tasks/my_tasks.html:142
#: app/utils/i18n_helpers.py:39 app/utils/i18n_helpers.py:45
msgid "Low"
msgstr ""

#: app/templates/client_portal/new_issue.html:56
#: app/templates/issues/edit.html:51 app/templates/issues/list.html:51
#: app/templates/issues/new.html:45 app/templates/issues/view.html:117
#: app/templates/project_templates/create.html:82
#: app/templates/project_templates/edit.html:85
#: app/templates/project_templates/edit.html:111
#: app/templates/recurring_tasks/form.html:94
#: app/templates/tasks/create.html:62 app/templates/tasks/create.html:82
#: app/templates/tasks/create.html:471 app/templates/tasks/edit.html:72
#: app/templates/tasks/edit.html:651 app/templates/tasks/my_tasks.html:143
#: app/utils/i18n_helpers.py:39 app/utils/i18n_helpers.py:45
msgid "Medium"
msgstr ""

#: app/templates/client_portal/new_issue.html:57
#: app/templates/issues/edit.html:52 app/templates/issues/list.html:52
#: app/templates/issues/new.html:46 app/templates/issues/view.html:118
#: app/templates/project_templates/create.html:83
#: app/templates/project_templates/edit.html:86
#: app/templates/project_templates/edit.html:112
#: app/templates/recurring_tasks/form.html:95
#: app/templates/tasks/create.html:63 app/templates/tasks/create.html:82
#: app/templates/tasks/create.html:472 app/templates/tasks/edit.html:73
#: app/templates/tasks/edit.html:652 app/templates/tasks/my_tasks.html:144
#: app/utils/i18n_helpers.py:39 app/utils/i18n_helpers.py:45
msgid "High"
msgstr ""

#: app/templates/client_portal/new_issue.html:58
#: app/templates/issues/edit.html:53 app/templates/issues/list.html:53
#: app/templates/issues/new.html:47 app/templates/issues/view.html:119
#: app/templates/recurring_tasks/form.html:96
#: app/templates/tasks/create.html:64 app/templates/tasks/create.html:82
#: app/templates/tasks/create.html:473 app/templates/tasks/edit.html:74
#: app/templates/tasks/edit.html:653 app/templates/tasks/my_tasks.html:145
#: app/utils/i18n_helpers.py:39 app/utils/i18n_helpers.py:45
msgid "Urgent"
msgstr ""

#: app/templates/client_portal/new_issue.html:65
msgid "Your Name"
msgstr ""

#: app/templates/client_portal/new_issue.html:68
msgid "Your name (optional)"
msgstr ""

#: app/templates/client_portal/new_issue.html:72
msgid "Your Email"
msgstr ""

#: app/templates/client_portal/new_issue.html:75
msgid "Your email (optional)"
msgstr ""

#: app/templates/client_portal/new_issue.html:85
msgid "Submit Issue"
msgstr ""

#: app/templates/client_portal/notifications.html:15
msgid "Stay updated on your projects and invoices"
msgstr ""

#: app/templates/client_portal/notifications.html:41
#: app/templates/client_portal/widgets/pending_actions.html:24
msgid "Unread"
msgstr ""

#: app/templates/client_portal/notifications.html:56
msgid "Mark All as Read"
msgstr ""

#: app/templates/client_portal/notifications.html:120
msgid "Mark as read"
msgstr ""

#: app/templates/client_portal/notifications.html:140
msgid "No Notifications"
msgstr ""

#: app/templates/client_portal/notifications.html:143
msgid "You have no unread notifications. All caught up!"
msgstr ""

#: app/templates/client_portal/notifications.html:145
msgid "You have no notifications yet. Notifications will appear here when there are updates to your projects or invoices."
msgstr ""

#: app/templates/client_portal/project_comments.html:4
#: app/templates/client_portal/project_comments.html:16
msgid "Project Comments"
msgstr ""

#: app/templates/client_portal/project_comments.html:11
#: app/templates/comments/_comments_section.html:6
#: app/templates/quotes/view.html:274
msgid "Comments"
msgstr ""

#: app/templates/client_portal/project_comments.html:22
#: app/templates/comments/_comments_section.html:12
#: app/templates/quotes/view.html:280
msgid "Add Comment"
msgstr ""

#: app/templates/client_portal/project_comments.html:26
#: app/templates/comments/_comments_section.html:28
#: app/templates/quotes/view.html:290
msgid "Your Comment"
msgstr ""

#: app/templates/client_portal/project_comments.html:29
msgid "Enter your comment..."
msgstr ""

#: app/templates/client_portal/project_comments.html:33
#: app/templates/comments/_comments_section.html:41
#: app/templates/quotes/view.html:301
msgid "Post Comment"
msgstr ""

#: app/templates/client_portal/project_comments.html:72
msgid "No Comments"
msgstr ""

#: app/templates/client_portal/project_comments.html:73
msgid "Be the first to comment on this project."
msgstr ""

#: app/templates/client_portal/project_comments.html:81
#: app/templates/projects/create.html:11
msgid "Back to Projects"
msgstr ""

#: app/templates/client_portal/projects.html:15
#, python-format
msgid "Projects for %(client_name)s"
msgstr ""

#: app/templates/client_portal/projects.html:85
msgid "View Time Entries"
msgstr ""

#: app/templates/client_portal/projects.html:99
#: app/templates/client_portal/widgets/projects.html:41
msgid "No projects found"
msgstr ""

#: app/templates/client_portal/projects.html:101
msgid "There are no projects available at this time. Projects will appear here once they are created and assigned to your account."
msgstr ""

#: app/templates/client_portal/quote_detail.html:16
#: app/templates/client_portal/quote_detail.html:33
#: app/templates/quotes/accept.html:15 app/templates/quotes/pdf_default.html:78
#: app/templates/quotes/view.html:57
msgid "Quote Details"
msgstr ""

#: app/templates/client_portal/quote_detail.html:37
#: app/templates/client_portal/quotes.html:28
#: app/templates/client_portal/quotes.html:44
#: app/templates/quotes/create.html:168 app/templates/quotes/edit.html:267
#: app/templates/quotes/pdf_default.html:59 app/templates/quotes/view.html:413
#: app/utils/pdf_generator_fallback.py:562
msgid "Valid Until"
msgstr ""

#: app/templates/client_portal/quote_detail.html:50
msgid "This quote has expired."
msgstr ""

#: app/templates/client_portal/quote_detail.html:64
#: app/templates/quotes/view.html:97
msgid "Quote Items"
msgstr ""

#: app/templates/client_portal/quote_detail.html:86
#: app/templates/inventory/reports/low_stock.html:30
#: app/templates/inventory/reports/low_stock.html:47
#: app/templates/inventory/reports/turnover.html:45
#: app/templates/inventory/reports/turnover.html:60
#: app/templates/inventory/reports/valuation.html:59
#: app/templates/inventory/reports/valuation.html:79
#: app/templates/inventory/stock_items/form.html:23
#: app/templates/inventory/stock_items/list.html:49
#: app/templates/inventory/stock_items/list.html:62
#: app/templates/inventory/stock_items/view.html:28
#: app/templates/inventory/stock_levels/warehouse.html:46
#: app/templates/inventory/stock_levels/warehouse.html:63
#: app/templates/inventory/warehouses/view.html:85
#: app/templates/inventory/warehouses/view.html:100
#: app/templates/invoices/edit.html:237 app/templates/invoices/edit.html:266
#: app/templates/invoices/edit.html:626
#: app/templates/invoices/pdf_default.html:139
#: app/templates/quotes/_edit_quote_form_scripts.html:237
#: app/templates/quotes/create.html:130 app/templates/quotes/edit.html:204
#: app/templates/quotes/edit.html:228 app/templates/quotes/pdf_default.html:107
#: app/templates/quotes/view.html:119 app/utils/pdf_generator.py:1273
#: app/utils/pdf_generator_reportlab.py:639
msgid "SKU"
msgstr ""

#: app/templates/client_portal/quote_detail.html:122
msgid "Terms & Conditions"
msgstr ""

#: app/templates/client_portal/quote_detail.html:135
msgid "Are you sure you want to accept this quote?"
msgstr ""

#: app/templates/client_portal/quote_detail.html:137
#: app/templates/quotes/accept.html:3 app/templates/quotes/accept.html:8
#: app/templates/quotes/view.html:248
msgid "Accept Quote"
msgstr ""

#: app/templates/client_portal/quote_detail.html:144
#: app/templates/client_portal/quote_detail.html:155
#: app/templates/client_portal/quote_detail.html:172
#: app/templates/quotes/view.html:252 app/templates/quotes/view.html:254
msgid "Reject Quote"
msgstr ""

#: app/templates/client_portal/quote_detail.html:148
#: app/templates/quotes/view.html:15
msgid "Back to Quotes"
msgstr ""

#: app/templates/client_portal/quote_detail.html:159
msgid "Reason (optional)"
msgstr ""

#: app/templates/client_portal/quote_detail.html:162
msgid "Please provide a reason for rejecting this quote..."
msgstr ""

#: app/templates/client_portal/quotes.html:15
#, python-format
msgid "Quotes for %(client_name)s"
msgstr ""

#: app/templates/client_portal/quotes.html:48
#: app/templates/integrations/health.html:74
#: app/templates/inventory/reservations/list.html:26
#: app/templates/inventory/reservations/list.html:86
#: app/templates/inventory/reservations/list.html:94
#: app/templates/kiosk/dashboard.html:202
#: app/templates/quotes/_quotes_list.html:70 app/templates/quotes/list.html:85
#: app/templates/quotes/view.html:79 app/templates/quotes/view.html:417
msgid "Expired"
msgstr ""

#: app/templates/client_portal/quotes.html:76
msgid "No quotes found."
msgstr ""

#: app/templates/client_portal/reports.html:15
msgid "Project and invoice summaries"
msgstr ""

#: app/templates/client_portal/reports.html:26
#: app/templates/client_portal/widgets/stats.html:20
#: app/templates/components/support_modal.html:25
#: app/templates/main/donate.html:173
msgid "Hours tracked"
msgstr ""

#: app/templates/client_portal/reports.html:81
msgid "Project progress"
msgstr ""

#: app/templates/client_portal/reports.html:93
msgid "Est. / Budget"
msgstr ""

#: app/templates/client_portal/reports.html:136
msgid "No project hours data available."
msgstr ""

#: app/templates/client_portal/reports.html:149
msgid "Task summary"
msgstr ""

#: app/templates/client_portal/reports.html:153
#, python-format
msgid "Total tasks: %(count)s"
msgstr ""

#: app/templates/client_portal/reports.html:164
msgid "No tasks yet."
msgstr ""

#: app/templates/client_portal/reports.html:178
msgid "Time by date (last 30 days)"
msgstr ""

#: app/templates/client_portal/reports.html:211
msgid "Recent Time Entries (Last 30 Days)"
msgstr ""

#: app/templates/client_portal/reports.html:263
msgid "No recent time entries."
msgstr ""

#: app/templates/client_portal/set_password.html:6
#: app/templates/client_portal/set_password.html:63
msgid "Set Password"
msgstr ""

#: app/templates/client_portal/set_password.html:30
msgid "Set your password to get started"
msgstr ""

#: app/templates/client_portal/set_password.html:34
#: app/templates/email/client_portal_password_setup.html:97
msgid "Set Your Password"
msgstr ""

#: app/templates/client_portal/set_password.html:36
msgid "Set a password for your client portal account"
msgstr ""

#: app/templates/client_portal/set_password.html:57
msgid "Confirm Password"
msgstr ""

#: app/templates/client_portal/set_password.html:60
msgid "Confirm your password"
msgstr ""

#: app/templates/client_portal/time_entries.html:15
#, python-format
msgid "Time entries for %(client_name)s projects"
msgstr ""

#: app/templates/client_portal/time_entries.html:27
#: app/templates/gantt/view.html:30 app/templates/reports/builder.html:96
#: app/templates/reports/time_entries_report.html:38
#: app/templates/tasks/my_tasks.html:151 app/templates/timer/calendar.html:62
#: app/templates/timer/time_entries_overview.html:91
msgid "All Projects"
msgstr ""

#: app/templates/client_portal/time_entries.html:35
msgid "From Date"
msgstr ""

#: app/templates/client_portal/time_entries.html:42
msgid "To Date"
msgstr ""

#: app/templates/client_portal/time_entries.html:148
msgid "Total entries"
msgstr ""

#: app/templates/client_portal/time_entries.html:154
#: app/templates/clients/view.html:409 app/templates/clients/view.html:588
#: app/templates/reports/week_in_review.html:26
#: app/templates/timer/bulk_entry.html:337
msgid "Total hours"
msgstr ""

#: app/templates/client_portal/time_entries.html:170
msgid "No time entries match your current filters. Try adjusting your filter criteria."
msgstr ""

#: app/templates/client_portal/time_entries.html:172
msgid "There are no time entries available at this time. Time entries will appear here once they are logged for your projects."
msgstr ""

#: app/templates/client_portal/time_entries.html:179
#: app/templates/timer/time_entries_overview.html:37
#: app/templates/timer/time_entries_overview.html:38
msgid "Clear Filters"
msgstr ""

#: app/templates/client_portal/widgets/invoices.html:8
msgid "Recent Invoices"
msgstr ""

#: app/templates/client_portal/widgets/invoices.html:11
#: app/templates/client_portal/widgets/pending_actions.html:29
#: app/templates/client_portal/widgets/projects.html:11
#: app/templates/client_portal/widgets/time_entries.html:11
msgid "View All"
msgstr ""

#: app/templates/client_portal/widgets/invoices.html:46
msgid "Invoices will appear here once they are created"
msgstr ""

#: app/templates/client_portal/widgets/pending_actions.html:8
msgid "Action Required"
msgstr ""

#: app/templates/client_portal/widgets/pending_actions.html:10
msgid "Time entries awaiting your review"
msgstr ""

#: app/templates/client_portal/widgets/pending_actions.html:14
msgid "Review Now"
msgstr ""

#: app/templates/client_portal/widgets/pending_actions.html:23
msgid "New Updates"
msgstr ""

#: app/templates/client_portal/widgets/pending_actions.html:25
msgid "Notifications waiting for you"
msgstr ""

#: app/templates/client_portal/widgets/projects.html:42
msgid "Projects will appear here once they are created"
msgstr ""

#: app/templates/client_portal/widgets/stats.html:8
msgid "Total active"
msgstr ""

#: app/templates/client_portal/widgets/stats.html:30
msgid "Total Invoices"
msgstr ""

#: app/templates/client_portal/widgets/stats.html:32
msgid "All invoices"
msgstr ""

#: app/templates/client_portal/widgets/time_entries.html:8
#: app/templates/user/profile.html:89
msgid "Recent Time Entries"
msgstr ""

#: app/templates/client_portal/widgets/time_entries.html:69
msgid "Time entries will appear here once they are logged"
msgstr ""

#: app/templates/clients/_clients_list.html:7
#: app/templates/expenses/list.html:171 app/templates/expenses/list.html:250
#: app/templates/projects/_projects_list.html:18
#: app/templates/projects/list.html:99
#: app/templates/reports/export_form.html:196
#: app/templates/reports/export_form.html:329
#: app/templates/reports/time_entries_report.html:93
#: app/templates/tasks/_tasks_list.html:7
msgid "Export to CSV"
msgstr ""

#: app/templates/clients/create.html:4 app/templates/clients/create.html:10
#: app/templates/clients/create.html:109 app/templates/projects/create.html:266
#: app/templates/projects/create.html:308
msgid "Create Client"
msgstr ""

#: app/templates/clients/create.html:8
msgid "Back to Clients"
msgstr ""

#: app/templates/clients/create.html:10
msgid "Add a new client to manage related projects and billing."
msgstr ""

#: app/templates/clients/create.html:21 app/templates/clients/edit.html:21
#: app/templates/projects/create.html:275
msgid "Enter client name"
msgstr ""

#: app/templates/clients/create.html:24 app/templates/clients/create.html:124
#: app/templates/clients/edit.html:24
#: app/templates/project_templates/create.html:52
#: app/templates/project_templates/edit.html:52
#: app/templates/projects/create.html:278
msgid "Default Hourly Rate"
msgstr ""

#: app/templates/clients/create.html:25 app/templates/clients/edit.html:25
#: app/templates/projects/create.html:72 app/templates/projects/create.html:279
msgid "e.g. 75.00"
msgstr ""

#: app/templates/clients/create.html:26 app/templates/clients/edit.html:26
msgid "This rate will be automatically filled when creating projects for this client"
msgstr ""

#: app/templates/clients/create.html:33 app/templates/projects/create.html:53
#: app/templates/projects/edit.html:49 app/templates/tasks/create.html:35
msgid "Supports Markdown"
msgstr ""

#: app/templates/clients/create.html:36 app/templates/clients/edit.html:32
#: app/templates/projects/create.html:284
msgid "Brief description of the client or project scope"
msgstr ""

#: app/templates/clients/create.html:43 app/templates/clients/edit.html:50
#: app/templates/inventory/suppliers/form.html:36
#: app/templates/inventory/suppliers/list.html:43
#: app/templates/inventory/suppliers/list.html:59
#: app/templates/inventory/suppliers/view.html:47
#: app/templates/inventory/warehouses/form.html:36
#: app/templates/inventory/warehouses/list.html:24
#: app/templates/inventory/warehouses/list.html:39
#: app/templates/inventory/warehouses/view.html:47
#: app/templates/main/help.html:243 app/templates/projects/create.html:288
msgid "Contact Person"
msgstr ""

#: app/templates/clients/create.html:44 app/templates/clients/edit.html:51
#: app/templates/projects/create.html:289
msgid "Primary contact name"
msgstr ""

#: app/templates/clients/create.html:48 app/templates/clients/edit.html:55
#: app/templates/projects/create.html:293
msgid "contact@client.com"
msgstr ""

#: app/templates/clients/create.html:54 app/templates/clients/edit.html:37
msgid "Monthly Prepaid Hours"
msgstr ""

#: app/templates/clients/create.html:55 app/templates/clients/edit.html:38
msgid "e.g. 50"
msgstr ""

#: app/templates/clients/create.html:56 app/templates/clients/edit.html:39
msgid "Leave empty if this client has no prepaid allocation."
msgstr ""

#: app/templates/clients/create.html:59 app/templates/clients/edit.html:42
msgid "Prepaid Reset Day"
msgstr ""

#: app/templates/clients/create.html:61 app/templates/clients/edit.html:44
msgid "Day of the month when prepaid hours reset (1-28)."
msgstr ""

#: app/templates/clients/create.html:68 app/templates/clients/edit.html:62
msgid "+1 (555) 123-4567"
msgstr ""

#: app/templates/clients/create.html:72 app/templates/clients/edit.html:66
msgid "Client address"
msgstr ""

#: app/templates/clients/create.html:80 app/templates/clients/edit.html:74
msgid "These custom fields are defined globally and available for all clients."
msgstr ""

#: app/templates/clients/create.html:94 app/templates/clients/edit.html:88
#: app/templates/projects/create.html:123 app/templates/projects/edit.html:114
msgid "Enter value"
msgstr ""

#: app/templates/clients/create.html:121
msgid "Choose a clear, descriptive name for the client organization."
msgstr ""

#: app/templates/clients/create.html:125
msgid "Set the standard hourly rate for this client. This will automatically populate when creating new projects."
msgstr ""

#: app/templates/clients/create.html:128 app/templates/contacts/view.html:25
#: app/templates/leads/view.html:39
msgid "Contact Information"
msgstr ""

#: app/templates/clients/create.html:129
msgid "Add contact details for easy communication and record keeping."
msgstr ""

#: app/templates/clients/create.html:132 app/templates/clients/view.html:176
msgid "Prepaid Hours"
msgstr ""

#: app/templates/clients/create.html:133
msgid "Configure monthly included hours and the reset day if this client has a retainer or prepaid bundle."
msgstr ""

#: app/templates/clients/create.html:137
msgid "Provide context about the client relationship or typical project types."
msgstr ""

#: app/templates/clients/edit.html:4 app/templates/clients/edit.html:10
#: app/templates/clients/view.html:9
msgid "Edit Client"
msgstr ""

#: app/templates/clients/edit.html:104
msgid "Enable portal access for this client. Clients can log in with their own credentials to view projects, invoices, and time entries."
msgstr ""

#: app/templates/clients/edit.html:109
msgid "Enable Client Portal"
msgstr ""

#: app/templates/clients/edit.html:115
msgid "Enable Issue Reporting"
msgstr ""

#: app/templates/clients/edit.html:118
msgid "Allow clients to report bugs and issues through the portal"
msgstr ""

#: app/templates/clients/edit.html:123
msgid "Portal Username"
msgstr ""

#: app/templates/clients/edit.html:125
msgid "Unique username for portal login"
msgstr ""

#: app/templates/clients/edit.html:128
msgid "Portal Password"
msgstr ""

#: app/templates/clients/edit.html:129
#: app/templates/integrations/caldav_setup.html:99
#: app/templates/integrations/manage.html:257
msgid "Leave empty to keep current password"
msgstr ""

#: app/templates/clients/edit.html:130
msgid "Set a new password or leave empty to keep current"
msgstr ""

#: app/templates/clients/edit.html:135
msgid "Current portal username"
msgstr ""

#: app/templates/clients/edit.html:144
msgid "Update Client"
msgstr ""

#: app/templates/clients/edit.html:153
msgid "Send Password Setup Email"
msgstr ""

#: app/templates/clients/edit.html:157
#, python-format
msgid "Send an email to %(email)s with a link to set their portal password."
msgstr ""

#: app/templates/clients/edit.html:163
msgid "Email address is required to send password setup email. Please set the client email address above."
msgstr ""

#: app/templates/clients/edit.html:172
msgid "Client Statistics"
msgstr ""

#: app/templates/clients/edit.html:188
msgid "Est. Total Cost"
msgstr ""

#: app/templates/clients/list.html:19
msgid "Filter Clients"
msgstr ""

#: app/templates/clients/list.html:20 app/templates/expenses/list.html:66
#: app/templates/invoices/list.html:33 app/templates/mileage/list.html:68
#: app/templates/payments/list.html:46 app/templates/per_diem/list.html:56
#: app/templates/projects/list.html:20 app/templates/quotes/list.html:67
#: app/templates/tasks/list.html:34 app/templates/tasks/my_tasks.html:107
msgid "Toggle Filters"
msgstr ""

#: app/templates/clients/list.html:77 app/templates/clients/list.html:106
#: app/templates/expenses/list.html:445 app/templates/expenses/list.html:474
#: app/templates/invoices/list.html:304 app/templates/invoices/list.html:333
#: app/templates/mileage/list.html:326 app/templates/mileage/list.html:355
#: app/templates/payments/list.html:281 app/templates/payments/list.html:310
#: app/templates/per_diem/list.html:365 app/templates/per_diem/list.html:394
#: app/templates/projects/list.html:459 app/templates/projects/list.html:488
#: app/templates/quotes/list.html:116 app/templates/quotes/list.html:143
#: app/templates/tasks/list.html:456 app/templates/tasks/list.html:485
#: app/templates/tasks/my_tasks.html:608 app/templates/tasks/my_tasks.html:638
msgid "Hide Filters"
msgstr ""

#: app/templates/clients/list.html:84 app/templates/clients/list.html:100
#: app/templates/expenses/list.html:452 app/templates/expenses/list.html:468
#: app/templates/invoices/list.html:311 app/templates/invoices/list.html:327
#: app/templates/mileage/list.html:333 app/templates/mileage/list.html:349
#: app/templates/payments/list.html:288 app/templates/payments/list.html:304
#: app/templates/per_diem/list.html:372 app/templates/per_diem/list.html:388
#: app/templates/projects/list.html:466 app/templates/projects/list.html:482
#: app/templates/quotes/list.html:122 app/templates/quotes/list.html:138
#: app/templates/tasks/list.html:463 app/templates/tasks/list.html:479
#: app/templates/tasks/my_tasks.html:615 app/templates/tasks/my_tasks.html:632
msgid "Show Filters"
msgstr ""

#: app/templates/clients/view.html:24
msgid "Assign a project to direct time entries before invoicing."
msgstr ""

#: app/templates/clients/view.html:24
msgid "No billable unbilled time for this client."
msgstr ""

#: app/templates/clients/view.html:25
msgid "No unbilled time"
msgstr ""

#: app/templates/clients/view.html:25 app/templates/clients/view.html:596
msgid "Invoice unbilled time"
msgstr ""

#: app/templates/clients/view.html:30
msgid "Mark client as Inactive?"
msgstr ""

#: app/templates/clients/view.html:30
msgid "Change Client Status"
msgstr ""

#: app/templates/clients/view.html:32 app/templates/projects/view.html:57
msgid "Mark Inactive"
msgstr ""

#: app/templates/clients/view.html:35
msgid "Activate client?"
msgstr ""

#: app/templates/clients/view.html:35
msgid "Activate Client"
msgstr ""

#: app/templates/clients/view.html:44
msgid "Delete Client"
msgstr ""

#: app/templates/clients/view.html:53
msgid "Client details and associated projects."
msgstr ""

#: app/templates/clients/view.html:62 app/templates/integrations/list.html:162
msgid "Manage"
msgstr ""

#: app/templates/clients/view.html:76 app/templates/contacts/form.html:65
#: app/templates/contacts/list.html:42
msgid "Primary"
msgstr ""

#: app/templates/clients/view.html:87
msgid "more contact(s)"
msgstr ""

#: app/templates/clients/view.html:92
msgid "No contacts yet"
msgstr ""

#: app/templates/clients/view.html:94
msgid "Add Contact"
msgstr ""

#: app/templates/clients/view.html:100
msgid "Legacy Contact Info"
msgstr ""

#: app/templates/clients/view.html:178
#, python-format
msgid "Plan includes %(hours)s hours per cycle. Resets on day %(day)s."
msgstr ""

#: app/templates/clients/view.html:182
msgid "Current cycle start"
msgstr ""

#: app/templates/clients/view.html:186
msgid "Remaining hours"
msgstr ""

#: app/templates/clients/view.html:187 app/templates/clients/view.html:191
#: app/templates/invoices/generate_from_time.html:30
#: app/templates/invoices/generate_from_time.html:39
#: app/templates/invoices/generate_from_time.html:57
#: app/templates/projects/view.html:468 app/templates/tasks/_tasks_list.html:88
#: app/templates/tasks/edit.html:170 app/templates/tasks/edit.html:172
#: app/templates/tasks/edit.html:175 app/templates/tasks/view.html:155
msgid "h"
msgstr ""

#: app/templates/clients/view.html:190
msgid "Consumed this cycle"
msgstr ""

#: app/templates/clients/view.html:201 app/templates/projects/view.html:328
msgid "Attachments"
msgstr ""

#: app/templates/clients/view.html:219 app/templates/projects/view.html:346
msgid "File"
msgstr ""

#: app/templates/clients/view.html:221 app/templates/projects/view.html:348
msgid "Max size: 10 MB. Allowed: images, PDFs, documents, spreadsheets, archives"
msgstr ""

#: app/templates/clients/view.html:224 app/templates/projects/view.html:351
msgid "Description (optional)"
msgstr ""

#: app/templates/clients/view.html:225
msgid "e.g., Contract, Agreement, etc."
msgstr ""

#: app/templates/clients/view.html:230 app/templates/projects/view.html:357
msgid "Visible to client in portal"
msgstr ""

#: app/templates/clients/view.html:272 app/templates/projects/view.html:399
#: app/templates/quotes/view.html:322
msgid "Client Visible"
msgstr ""

#: app/templates/clients/view.html:278 app/templates/comments/_comment.html:83
#: app/templates/projects/view.html:405
msgid "Are you sure you want to delete this attachment?"
msgstr ""

#: app/templates/clients/view.html:278 app/templates/projects/view.html:405
msgid "Delete Attachment"
msgstr ""

#: app/templates/clients/view.html:288 app/templates/projects/view.html:415
msgid "No attachments yet"
msgstr ""

#: app/templates/clients/view.html:322 app/templates/projects/view.html:122
#: app/utils/i18n_helpers.py:51 app/utils/i18n_helpers.py:57
msgid "Archived"
msgstr ""

#: app/templates/clients/view.html:343
msgid "Recent Hours History"
msgstr ""

#: app/templates/clients/view.html:408
#, python-format
msgid "Showing last %(count)s entries"
msgstr ""

#: app/templates/clients/view.html:414
msgid "No recent time entries found."
msgstr ""

#: app/templates/clients/view.html:424
#: app/templates/inventory/purchase_orders/form.html:59
#: app/templates/quotes/create.html:248 app/templates/quotes/edit.html:334
msgid "Internal Notes"
msgstr ""

#: app/templates/clients/view.html:426
msgid "Add Note"
msgstr ""

#: app/templates/clients/view.html:442
msgid "Add an internal note about this client..."
msgstr ""

#: app/templates/clients/view.html:458
msgid "Save Note"
msgstr ""

#: app/templates/clients/view.html:482 app/templates/comments/_comment.html:29
msgid "edited"
msgstr ""

#: app/templates/clients/view.html:491
msgid "Important"
msgstr ""

#: app/templates/clients/view.html:500
msgid "Unmark"
msgstr ""

#: app/templates/clients/view.html:500
msgid "Mark Important"
msgstr ""

#: app/templates/clients/view.html:527
msgid "No notes yet. Add a note to keep track of important information about this client."
msgstr ""

#: app/templates/clients/view.html:590
msgid "Estimated total"
msgstr ""

#: app/templates/clients/view.html:594
msgid "Create a draft invoice?"
msgstr ""

#: app/templates/clients/view.html:597
msgid "Create invoice"
msgstr ""

#: app/templates/clients/view.html:615 app/templates/clients/view.html:621
msgid "Could not create invoice."
msgstr ""

#: app/templates/clients/view.html:630
msgid "Are you sure you want to delete this note?"
msgstr ""

#: app/templates/clients/view.html:632
msgid "Delete Note"
msgstr ""

#: app/templates/comments/_comment.html:28
msgid "Edited on"
msgstr ""

#: app/templates/comments/_comment.html:45
#: app/templates/comments/_comment.html:161 app/templates/quotes/view.html:370
#: app/templates/quotes/view.html:384
msgid "Reply"
msgstr ""

#: app/templates/comments/_comment.html:103
msgid "Add Attachment"
msgstr ""

#: app/templates/comments/_comment.html:114
msgid "Max 10 MB. Images, PDFs, documents, spreadsheets, archives"
msgstr ""

#: app/templates/comments/_comment.html:157
msgid "Write your reply..."
msgstr ""

#: app/templates/comments/_comment.html:184
msgid "Replies are too deeply nested to display."
msgstr ""

#: app/templates/comments/_comment.html:193
msgid "Comment nesting too deep to display."
msgstr ""

#: app/templates/comments/_comments_section.html:30
#: app/templates/quotes/view.html:291
msgid "Share your thoughts, updates, or questions..."
msgstr ""

#: app/templates/comments/_comments_section.html:32
#: app/templates/comments/edit.html:74
msgid "You can use line breaks to format your comment."
msgstr ""

#: app/templates/comments/_comments_section.html:34
msgid "Add Image"
msgstr ""

#: app/templates/comments/_comments_section.html:73
msgid "No comments yet"
msgstr ""

#: app/templates/comments/_comments_section.html:74
msgid "Start the conversation by adding the first comment."
msgstr ""

#: app/templates/comments/_comments_section.html:76
msgid "Add First Comment"
msgstr ""

#: app/templates/comments/edit.html:3 app/templates/comments/edit.html:12
msgid "Edit Comment"
msgstr ""

#: app/templates/comments/edit.html:15 app/templates/invoices/edit.html:7
#: app/templates/setup/initial_setup.html:279
#: app/templates/setup/initial_setup.html:280
#: app/templates/timer/bulk_entry.html:71
#: app/templates/timer/bulk_entry.html:219
#: app/templates/timer/edit_timer.html:386
#: app/templates/timer/edit_timer.html:507
#: app/templates/weekly_goals/view.html:30
msgid "Back"
msgstr ""

#: app/templates/comments/edit.html:26
msgid "Editing comment on:"
msgstr ""

#: app/templates/comments/edit.html:54
msgid "Originally posted on"
msgstr ""

#: app/templates/comments/edit.html:70
msgid "Comment Content"
msgstr ""

#: app/templates/components/activity_feed_widget.html:18
msgid "All Activities"
msgstr ""

#: app/templates/components/activity_feed_widget.html:35
msgid "Time Templates"
msgstr ""

#: app/templates/components/activity_feed_widget.html:103
#: app/templates/components/activity_feed_widget.html:306
#: app/templates/main/dashboard.html:623
#: app/templates/projects/dashboard.html:267
#: app/templates/user/profile.html:153
msgid "No recent activity"
msgstr ""

#: app/templates/components/activity_feed_widget.html:104
#: app/templates/components/activity_feed_widget.html:307
msgid "Activity will appear here as you work"
msgstr ""

#: app/templates/components/activity_feed_widget.html:111
#: app/templates/components/activity_feed_widget.html:296
#: app/templates/components/activity_feed_widget.html:334
msgid "Load More"
msgstr ""

#: app/templates/components/activity_feed_widget.html:327
msgid "Failed to load activities"
msgstr ""

#: app/templates/components/chat_user_selector.html:6
msgid "Start a Chat"
msgstr ""

#: app/templates/components/chat_user_selector.html:17
msgid "Search users..."
msgstr ""

#: app/templates/components/chat_user_selector.html:26
msgid "Loading users..."
msgstr ""

#: app/templates/components/chat_user_selector.html:32
#: app/templates/components/chat_user_selector.html:116
msgid "Failed to load users"
msgstr ""

#: app/templates/components/chat_user_selector.html:43
msgid "No users found"
msgstr ""

#: app/templates/components/chat_user_selector.html:213
msgid "Starting chat..."
msgstr ""

#: app/templates/components/chat_user_selector.html:270
msgid "Failed to start chat"
msgstr ""

#: app/templates/components/client_select.html:8
#: app/templates/components/client_select.html:13
#: app/templates/components/client_select.html:17
#: app/templates/projects/create.html:35 app/templates/projects/edit.html:33
msgid "Client (auto-selected)"
msgstr ""

#: app/templates/components/client_select.html:20
#: app/templates/projects/create.html:38 app/templates/projects/edit.html:36
msgid "Select a client..."
msgstr ""

#: app/templates/components/client_select.html:20
msgid "Select a client (optional)"
msgstr ""

#: app/templates/components/multi_select.html:47
#: app/templates/components/multi_select.html:209
msgid "Selected"
msgstr ""

#: app/templates/components/multi_select.html:67
msgid "Search..."
msgstr ""

#: app/templates/components/multi_select.html:80
msgid "Select all"
msgstr ""

#: app/templates/components/multi_select.html:105
msgid "No items available"
msgstr ""

#: app/templates/components/multi_select.html:122
#: app/templates/projects/time_entries_overview.html:39
#: app/templates/reports/index.html:94
msgid "Apply"
msgstr ""

#: app/templates/components/offline_indicator.html:10
#: app/templates/integrations/manage.html:630
#: app/templates/integrations/view.html:143
msgid "Sync Now"
msgstr ""

#: app/templates/components/offline_indicator.html:18
msgid "Pending Sync"
msgstr ""

#: app/templates/components/offline_indicator.html:24
#: app/templates/components/offline_indicator.html:56
msgid "No pending items"
msgstr ""

#: app/templates/components/offline_indicator.html:29
msgid "Sync All"
msgstr ""

#: app/templates/components/offline_indicator.html:96
msgid "Error loading queue"
msgstr ""

#: app/templates/components/persistent_chat_widget.html:9
msgid "Toggle chat"
msgstr ""

#: app/templates/components/persistent_chat_widget.html:21
msgid "Chat"
msgstr ""

#: app/templates/components/persistent_chat_widget.html:27
msgid "Start new chat"
msgstr ""

#: app/templates/components/persistent_chat_widget.html:41
msgid "Minimize chat"
msgstr ""

#: app/templates/components/persistent_chat_widget.html:90
msgid "View full"
msgstr ""

#: app/templates/components/persistent_chat_widget.html:331
msgid "Failed to load messages"
msgstr ""

#: app/templates/components/persistent_chat_widget.html:341
msgid "No messages yet"
msgstr ""

#: app/templates/components/persistent_chat_widget.html:403
#: app/templates/components/persistent_chat_widget.html:409
msgid "Failed to send message"
msgstr ""

#: app/templates/components/support_modal.html:12
msgid "Thank you for being a supporter. Sharing the app helps others discover it too."
msgstr ""

#: app/templates/components/support_modal.html:14
msgid "TimeTracker is free and built independently. If it helps you, consider supporting its development."
msgstr ""

#: app/templates/components/support_modal.html:37
msgid "Trusted by teams and freelancers who want simple, reliable time tracking."
msgstr ""

#: app/templates/components/support_modal.html:40
#: app/templates/components/support_modal.html:41
#: app/templates/components/support_modal.html:42
#: app/templates/main/about.html:215 app/templates/main/dashboard.html:653
#: app/templates/main/donate.html:34 app/templates/main/donate.html:43
msgid "Donate"
msgstr ""

#: app/templates/components/support_modal.html:46
#: app/templates/user/license.html:28
msgid "Buy license (€25)"
msgstr ""

#: app/templates/components/support_modal.html:48
msgid "Love TimeTracker? Share it"
msgstr ""

#: app/templates/components/support_modal.html:51
msgid "A license is a supporter badge — it does not lock features. You keep full access either way."
msgstr ""

#: app/templates/components/ui.html:52
msgid "Home"
msgstr ""

#: app/templates/components/ui.html:79
#: app/templates/reports/time_entries_report.html:142
msgid "Pagination"
msgstr ""

#: app/templates/components/ui.html:81
#: app/templates/timer/_time_entries_list.html:224
#, python-format
msgid "Showing %(start)s to %(end)s of %(total)s entries"
msgstr ""

#: app/templates/components/ui.html:750
msgid "Click to upload or drag and drop"
msgstr ""

#: app/templates/contacts/communication_form.html:31
#: app/templates/deals/activity_form.html:28
#: app/templates/leads/activity_form.html:28
msgid "Call"
msgstr ""

#: app/templates/contacts/communication_form.html:34
msgid "Message"
msgstr ""

#: app/templates/contacts/communication_form.html:39
msgid "Direction"
msgstr ""

#: app/templates/contacts/communication_form.html:41
msgid "Outbound"
msgstr ""

#: app/templates/contacts/communication_form.html:42
msgid "Inbound"
msgstr ""

#: app/templates/contacts/communication_form.html:47
#: app/templates/deals/activity_form.html:50
#: app/templates/leads/activity_form.html:50 app/templates/quotes/view.html:459
msgid "Subject"
msgstr ""

#: app/templates/contacts/communication_form.html:61
#: app/templates/deals/activity_form.html:38
#: app/templates/leads/activity_form.html:38
msgid "Scheduled"
msgstr ""

#: app/templates/contacts/communication_form.html:67
msgid "Follow-up Date"
msgstr ""

#: app/templates/contacts/communication_form.html:72
msgid "Content/Notes"
msgstr ""

#: app/templates/contacts/communication_form.html:79
msgid "Save Communication"
msgstr ""

#: app/templates/contacts/form.html:27 app/templates/leads/form.html:25
msgid "First Name"
msgstr ""

#: app/templates/contacts/form.html:32 app/templates/leads/form.html:30
msgid "Last Name"
msgstr ""

#: app/templates/contacts/form.html:47 app/templates/contacts/view.html:42
#: app/templates/main/about.html:157
msgid "Mobile"
msgstr ""

#: app/templates/contacts/form.html:57 app/templates/contacts/view.html:54
msgid "Department"
msgstr ""

#: app/templates/contacts/form.html:64 app/templates/deals/form.html:40
#: app/templates/deals/view.html:42
msgid "Contact"
msgstr ""

#: app/templates/contacts/form.html:66
msgid "Billing"
msgstr ""

#: app/templates/contacts/form.html:67
msgid "Technical"
msgstr ""

#: app/templates/contacts/form.html:74
msgid "Set as primary contact"
msgstr ""

#: app/templates/contacts/form.html:89 app/templates/leads/form.html:93
#: app/templates/leads/view.html:122 app/templates/main/search.html:38
#: app/templates/project_templates/create.html:35
#: app/templates/project_templates/edit.html:35
#: app/templates/project_templates/view.html:112
#: app/templates/reports/user_report.html:82
#: app/templates/tasks/_kanban.html:1299
#: app/templates/tasks/_tasks_list.html:32
#: app/templates/tasks/_tasks_list.html:49 app/templates/tasks/create.html:119
#: app/templates/tasks/edit.html:127 app/templates/tasks/list.html:45
#: app/templates/tasks/my_tasks.html:123 app/templates/tasks/view.html:139
#: app/templates/timer/_time_entries_list.html:42
#: app/templates/timer/_time_entries_list.html:122
#: app/templates/timer/bulk_entry.html:198
#: app/templates/timer/calendar.html:192 app/templates/timer/calendar.html:880
#: app/templates/timer/edit_timer.html:348
#: app/templates/timer/edit_timer.html:460
#: app/templates/timer/manual_entry.html:148
#: app/templates/timer/time_entries_export_pdf.html:20
#: app/templates/timer/view_timer.html:52
msgid "Tags"
msgstr ""

#: app/templates/contacts/form.html:96
msgid "Save Contact"
msgstr ""

#: app/templates/contacts/list.html:63
msgid "Set Primary"
msgstr ""

#: app/templates/contacts/list.html:76
msgid "No contacts found"
msgstr ""

#: app/templates/contacts/list.html:78
msgid "Add First Contact"
msgstr ""

#: app/templates/contacts/view.html:29
msgid "Primary Contact"
msgstr ""

#: app/templates/contacts/view.html:81
msgid "Communication History"
msgstr ""

#: app/templates/contacts/view.html:83
msgid "Add Communication"
msgstr ""

#: app/templates/contacts/view.html:104
msgid "No communications recorded"
msgstr ""

#: app/templates/deals/activity_form.html:4
#: app/templates/deals/activity_form.html:10
#: app/templates/deals/activity_form.html:15
#: app/templates/deals/activity_form.html:60 app/templates/deals/view.html:15
#: app/templates/deals/view.html:145 app/templates/leads/activity_form.html:4
#: app/templates/leads/activity_form.html:10
#: app/templates/leads/activity_form.html:15
#: app/templates/leads/activity_form.html:60 app/templates/leads/view.html:15
#: app/templates/leads/view.html:138
msgid "Add Activity"
msgstr ""

#: app/templates/deals/activity_form.html:42
#: app/templates/leads/activity_form.html:42
msgid "Activity Date"
msgstr ""

#: app/templates/deals/activity_form.html:51
#: app/templates/leads/activity_form.html:51
msgid "Brief subject or title"
msgstr ""

#: app/templates/deals/form.html:25 app/templates/deals/list.html:50
#: app/templates/deals/list.html:62 app/templates/leads/convert_to_deal.html:25
msgid "Deal Name"
msgstr ""

#: app/templates/deals/form.html:32 app/templates/leads/convert_to_deal.html:31
msgid "Select Client"
msgstr ""

#: app/templates/deals/form.html:42
msgid "Select Contact"
msgstr ""

#: app/templates/deals/form.html:52 app/templates/deals/list.html:30
#: app/templates/deals/list.html:52 app/templates/deals/list.html:66
#: app/templates/deals/view.html:47
#: app/templates/invoice_approvals/list.html:32
#: app/templates/invoice_approvals/view.html:70
#: app/templates/leads/convert_to_deal.html:38
msgid "Stage"
msgstr ""

#: app/templates/deals/form.html:61
msgid "Deal Value"
msgstr ""

#: app/templates/deals/form.html:75 app/templates/leads/convert_to_deal.html:46
msgid "Win Probability"
msgstr ""

#: app/templates/deals/form.html:80 app/templates/leads/convert_to_deal.html:50
msgid "Expected Close Date"
msgstr ""

#: app/templates/deals/form.html:86 app/templates/deals/view.html:126
msgid "Related Quote"
msgstr ""

#: app/templates/deals/form.html:88
msgid "Select Quote"
msgstr ""

#: app/templates/deals/form.html:109
msgid "Save Deal"
msgstr ""

#: app/templates/deals/list.html:25
msgid "Won"
msgstr ""

#: app/templates/deals/list.html:26
msgid "Lost"
msgstr ""

#: app/templates/deals/list.html:32
msgid "All Stages"
msgstr ""

#: app/templates/deals/list.html:53 app/templates/deals/list.html:71
#: app/templates/deals/view.html:60
msgid "Value"
msgstr ""

#: app/templates/deals/list.html:54 app/templates/deals/list.html:78
#: app/templates/deals/view.html:65
msgid "Probability"
msgstr ""

#: app/templates/deals/list.html:55 app/templates/deals/list.html:79
#: app/templates/deals/view.html:70
msgid "Expected Close"
msgstr ""

#: app/templates/deals/list.html:91
msgid "No deals found"
msgstr ""

#: app/templates/deals/list.html:93
msgid "Create First Deal"
msgstr ""

#: app/templates/deals/view.html:16
msgid "Pipeline"
msgstr ""

#: app/templates/deals/view.html:32
msgid "Deal Information"
msgstr ""

#: app/templates/deals/view.html:76
msgid "Actual Close"
msgstr ""

#: app/templates/deals/view.html:82 app/templates/leads/view.html:102
msgid "Owner"
msgstr ""

#: app/templates/deals/view.html:88
msgid "Related Lead"
msgstr ""

#: app/templates/deals/view.html:119
msgid "Loss Reason"
msgstr ""

#: app/templates/deals/view.html:133 app/templates/quotes/view.html:179
msgid "Related Project"
msgstr ""

#: app/templates/deals/view.html:158 app/templates/leads/view.html:151
msgid "by"
msgstr ""

#: app/templates/deals/view.html:171 app/templates/leads/view.html:164
msgid "No activities recorded yet"
msgstr ""

#: app/templates/deals/view.html:173 app/templates/leads/view.html:166
msgid "Add first activity"
msgstr ""

#: app/templates/deals/view.html:180
msgid "History"
msgstr ""

#: app/templates/deals/view.html:183
msgid "View full history"
msgstr ""

#: app/templates/deals/view.html:226
msgid "No change history yet"
msgstr ""

#: app/templates/email/comment_mention.html:70
msgid "You Were Mentioned"
msgstr ""

#: app/templates/email/comment_mention.html:90
msgid "View Task & Reply"
msgstr ""

#: app/templates/email/invoice.html:63
#: app/templates/inventory/movements/list.html:38
#: app/templates/invoice_approvals/list.html:27
#: app/templates/invoice_approvals/request.html:9
#: app/templates/invoice_approvals/view.html:10
#: app/templates/invoices/pdf_default.html:5
#: app/templates/payments/list.html:142 app/utils/pdf_generator.py:1032
#: app/utils/pdf_generator.py:1042
msgid "Invoice"
msgstr ""

#: app/templates/email/overdue_invoice.html:65
msgid "Invoice Overdue"
msgstr ""

#: app/templates/email/overdue_invoice.html:106
#: app/templates/invoice_approvals/view.html:13
#: app/templates/invoices/view.html:46
msgid "View Invoice"
msgstr ""

#: app/templates/email/quote.html:63
#: app/templates/inventory/movements/list.html:39
#: app/templates/quotes/pdf_default.html:5 app/utils/pdf_generator.py:2310
msgid "Quote"
msgstr ""

#: app/templates/email/quote_approval_rejected.html:74
msgid "Quote Approval Rejected"
msgstr ""

#: app/templates/email/quote_approval_rejected.html:98
#: app/templates/email/quote_approved.html:84
#: app/templates/email/quote_expired.html:83
#: app/templates/email/quote_expiring.html:93
#: app/templates/email/quote_sent.html:81
msgid "View Quote"
msgstr ""

#: app/templates/email/quote_approval_request.html:67
msgid "Approval Requested"
msgstr ""

#: app/templates/email/quote_approval_request.html:83
msgid "Review Quote"
msgstr ""

#: app/templates/email/quote_approved.html:67
msgid "Quote Approved"
msgstr ""

#: app/templates/email/quote_expired.html:67
msgid "Quote Expired"
msgstr ""

#: app/templates/email/quote_expiring.html:74
msgid "Quote Expiring Soon"
msgstr ""

#: app/templates/email/quote_sent.html:67
msgid "Quote Sent"
msgstr ""

#: app/templates/email/task_assigned.html:71
msgid "Task Assignment"
msgstr ""

#: app/templates/email/task_assigned.html:117 app/templates/tasks/edit.html:280
msgid "View Task"
msgstr ""

#: app/templates/email/test_email.html:115
msgid "Test Details"
msgstr ""

#: app/templates/email/weekly_summary.html:89
msgid "Your Weekly Summary"
msgstr ""

#: app/templates/errors/400.html:3
msgid "400 Bad Request"
msgstr ""

#: app/templates/errors/400.html:13
msgid "Invalid Request"
msgstr ""

#: app/templates/errors/400.html:15
msgid "The request you made is invalid or contains errors. This could be due to:"
msgstr ""

#: app/templates/errors/400.html:18
msgid "Missing or invalid form data"
msgstr ""

#: app/templates/errors/400.html:19
msgid "Malformed request parameters"
msgstr ""

#: app/templates/errors/403.html:15
msgid "You don't have permission to access this resource. This could be due to:"
msgstr ""

#: app/templates/errors/403.html:18
msgid "Insufficient privileges"
msgstr ""

#: app/templates/errors/403.html:19
msgid "Not logged in"
msgstr ""

#: app/templates/errors/403.html:20
msgid "Resource access restrictions"
msgstr ""

#: app/templates/errors/500.html:17
msgid "Something went wrong on our end. Please try again later."
msgstr ""

#: app/templates/errors/500.html:21
msgid "Try Again"
msgstr ""

#: app/templates/errors/generic.html:17
msgid "An error occurred while processing your request."
msgstr ""

#: app/templates/errors/generic.html:32
msgid "Refresh Page"
msgstr ""

#: app/templates/errors/generic.html:36
msgid "Go to Login"
msgstr ""

#: app/templates/expense_categories/form.html:34
msgid "e.g., Travel, Meals, Office Supplies"
msgstr ""

#: app/templates/expense_categories/form.html:44
msgid "e.g., TRAVEL, MEALS"
msgstr ""

#: app/templates/expense_categories/form.html:54
msgid "Brief description of this category..."
msgstr ""

#: app/templates/expense_categories/form.html:73
msgid "e.g., fa-plane, fa-utensils"
msgstr ""

#: app/templates/expense_categories/form.html:142
msgid "e.g., 19.00"
msgstr ""

#: app/templates/expenses/dashboard.html:195
#: app/templates/expenses/list.html:305
#: app/templates/inventory/reports/valuation.html:30
#: app/templates/inventory/reports/valuation.html:60
#: app/templates/inventory/reports/valuation.html:80
#: app/templates/inventory/stock_items/form.html:35
#: app/templates/inventory/stock_items/list.html:25
#: app/templates/inventory/stock_items/list.html:51
#: app/templates/inventory/stock_items/list.html:68
#: app/templates/inventory/stock_items/view.html:32
#: app/templates/inventory/stock_levels/list.html:29
#: app/templates/inventory/stock_levels/warehouse.html:21
#: app/templates/inventory/stock_levels/warehouse.html:47
#: app/templates/inventory/stock_levels/warehouse.html:64
#: app/templates/invoices/edit.html:162 app/templates/invoices/edit.html:234
#: app/templates/invoices/pdf_default.html:142
#: app/templates/kiosk/dashboard.html:123
#: app/templates/project_templates/create.html:30
#: app/templates/project_templates/edit.html:30
#: app/templates/project_templates/list.html:22
#: app/templates/projects/add_cost.html:37
#: app/templates/projects/add_good.html:29
#: app/templates/projects/edit_cost.html:44
#: app/templates/projects/edit_good.html:29
#: app/templates/projects/goods.html:40 app/templates/projects/goods.html:60
#: app/templates/quotes/create.html:96 app/templates/quotes/create.html:127
#: app/templates/quotes/edit.html:144 app/templates/quotes/edit.html:201
#: app/utils/pdf_generator.py:1276 app/utils/pdf_generator_reportlab.py:642
msgid "Category"
msgstr ""

#: app/templates/expenses/form.html:23
#: app/templates/inventory/purchase_orders/form.html:25
#: app/templates/quotes/create.html:28 app/templates/quotes/edit.html:28
#: app/templates/recurring_tasks/form.html:26
msgid "Basic Information"
msgstr ""

#: app/templates/expenses/form.html:33
msgid "e.g., Flight to Berlin"
msgstr ""

#: app/templates/expenses/form.html:42
msgid "Additional details about the expense..."
msgstr ""

#: app/templates/expenses/form.html:52
msgid "Select Category"
msgstr ""

#: app/templates/expenses/form.html:75
msgid "Amount Details"
msgstr ""

#: app/templates/expenses/form.html:124
msgid "Association"
msgstr ""

#: app/templates/expenses/form.html:158 app/templates/payments/view.html:21
msgid "Payment Details"
msgstr ""

#: app/templates/expenses/form.html:192
msgid "e.g., Lufthansa"
msgstr ""

#: app/templates/expenses/form.html:201
msgid "Receipt & Additional Information"
msgstr ""

#: app/templates/expenses/form.html:222
msgid "Receipt/Invoice Number"
msgstr ""

#: app/templates/expenses/form.html:226
msgid "e.g., INV-2024-001"
msgstr ""

#: app/templates/expenses/form.html:237
msgid "e.g., conference, client-meeting, urgent"
msgstr ""

#: app/templates/expenses/form.html:246 app/templates/mileage/form.html:238
#: app/templates/per_diem/form.html:190
msgid "Additional notes..."
msgstr ""

#: app/templates/expenses/form.html:254
msgid "Options"
msgstr ""

#: app/templates/expenses/list.html:65
msgid "Filter Expenses"
msgstr ""

#: app/templates/expenses/list.html:203
msgid "Delete Selected Expenses"
msgstr ""

#: app/templates/expenses/list.html:223
msgid "Change Status for Selected Expenses"
msgstr ""

#: app/templates/expenses/view.html:252
msgid "Associated With"
msgstr ""

#: app/templates/expenses/view.html:348
msgid "Reject Expense"
msgstr ""

#: app/templates/expenses/view.html:357
msgid "Explain why this expense is being rejected..."
msgstr ""

#: app/templates/expenses/view.html:397
msgid "Are you sure you want to delete this expense?"
msgstr ""

#: app/templates/expenses/view.html:399
msgid "Delete Expense"
msgstr ""

#: app/templates/gantt/view.html:13 app/templates/kanban/board.html:15
msgid "Add task"
msgstr ""

#: app/templates/import_export/index.html:4
#: app/templates/import_export/index.html:13
msgid "Import/Export Data"
msgstr ""

#: app/templates/import_export/index.html:8
msgid "Import/Export"
msgstr ""

#: app/templates/import_export/index.html:14
msgid "Import data from other time trackers or export your data for GDPR compliance and backups"
msgstr ""

#: app/templates/import_export/index.html:24
msgid "Import Data"
msgstr ""

#: app/templates/import_export/index.html:29
msgid "CSV Import - Time Entries"
msgstr ""

#: app/templates/import_export/index.html:30
msgid "Import time entries from a CSV file"
msgstr ""

#: app/templates/import_export/index.html:34
#: app/templates/import_export/index.html:53
msgid "Choose CSV File"
msgstr ""

#: app/templates/import_export/index.html:38
#: app/templates/import_export/index.html:57
msgid "Download Template"
msgstr ""

#: app/templates/import_export/index.html:48
msgid "CSV Import - Clients"
msgstr ""

#: app/templates/import_export/index.html:49
msgid "Import clients with custom fields and multiple contacts from a CSV file"
msgstr ""

#: app/templates/import_export/index.html:63
msgid "Skip duplicate clients"
msgstr ""

#: app/templates/import_export/index.html:66
msgid "Use these fields for duplicate detection:"
msgstr ""

#: app/templates/import_export/index.html:72
msgid "Custom fields (comma-separated):"
msgstr ""

#: app/templates/import_export/index.html:73
msgid "e.g., debtor_number, erp_id"
msgstr ""

#: app/templates/import_export/index.html:75
msgid "Example: Enter \"debtor_number\" to detect duplicates by debtor number only (not by name)"
msgstr ""

#: app/templates/import_export/index.html:85
#: app/templates/import_export/index.html:211
msgid "Import from Toggl Track"
msgstr ""

#: app/templates/import_export/index.html:86
msgid "Import time entries from Toggl Track"
msgstr ""

#: app/templates/import_export/index.html:89
msgid "Import from Toggl"
msgstr ""

#: app/templates/import_export/index.html:97
#: app/templates/import_export/index.html:101
#: app/templates/import_export/index.html:249
msgid "Import from Harvest"
msgstr ""

#: app/templates/import_export/index.html:98
msgid "Import time entries from Harvest"
msgstr ""

#: app/templates/import_export/index.html:110
msgid "Restore from Backup"
msgstr ""

#: app/templates/import_export/index.html:111
msgid "Restore data from a JSON or ZIP backup file"
msgstr ""

#: app/templates/import_export/index.html:125
msgid "Import History"
msgstr ""

#: app/templates/import_export/index.html:137
msgid "Export Data"
msgstr ""

#: app/templates/import_export/index.html:142
msgid "Full Data Export (GDPR)"
msgstr ""

#: app/templates/import_export/index.html:143
msgid "Export all your personal data"
msgstr ""

#: app/templates/import_export/index.html:147
msgid "Export as JSON"
msgstr ""

#: app/templates/import_export/index.html:150
msgid "Export as ZIP"
msgstr ""

#: app/templates/import_export/index.html:160
msgid "Filtered Export"
msgstr ""

#: app/templates/import_export/index.html:161
msgid "Export specific data with filters"
msgstr ""

#: app/templates/import_export/index.html:164
msgid "Export with Filters"
msgstr ""

#: app/templates/import_export/index.html:172
msgid "Export Clients"
msgstr ""

#: app/templates/import_export/index.html:173
msgid "Export all clients with custom fields and contacts to CSV"
msgstr ""

#: app/templates/import_export/index.html:176
msgid "Export Clients to CSV"
msgstr ""

#: app/templates/import_export/index.html:186
msgid "Create a full database backup"
msgstr ""

#: app/templates/import_export/index.html:199
msgid "Export History"
msgstr ""

#: app/templates/import_export/index.html:215
#: app/templates/import_export/index.html:258
msgid "API Token"
msgstr ""

#: app/templates/import_export/index.html:220
msgid "Workspace ID"
msgstr ""

#: app/templates/import_export/index.html:236
#: app/templates/import_export/index.html:274
msgid "Import"
msgstr ""

#: app/templates/import_export/index.html:253
msgid "Account ID"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:4
#: app/templates/integrations/activitywatch_setup.html:14
msgid "ActivityWatch Setup"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:15
msgid "Import window and web activity from ActivityWatch (aw-server) as automatic time entries"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:25
#: app/templates/integrations/caldav_setup.html:25
msgid "Server Connection"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:29
msgid "ActivityWatch Server URL"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:39
msgid "Base URL of your aw-server (no trailing slash). aw-server must be running and reachable from this server."
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:40
msgid "Use http://localhost:5600 if TimeTracker runs on the same machine."
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:47
#: app/templates/integrations/caldav_setup.html:126
msgid "Import Settings"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:51
#: app/templates/integrations/caldav_setup.html:130
msgid "Default Project"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:57
#: app/templates/integrations/caldav_setup.html:136
msgid "No project (import without project)"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:66
msgid "Assign imported activity events to this project. Leave empty to import without a project."
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:72
#: app/templates/integrations/caldav_setup.html:153
msgid "No active projects found. Events will be imported without a project."
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:73
#: app/templates/integrations/caldav_setup.html:154
msgid "You can create a project later and assign events to it."
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:76
#: app/templates/integrations/caldav_setup.html:157
msgid "Create a project"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:84
#: app/templates/integrations/caldav_setup.html:165
msgid "Lookback Days"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:94
msgid "How many days back to import on full sync (1–90, default: 7)."
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:100
msgid "Bucket IDs"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:108
msgid "Comma-separated or JSON array. Leave empty to use all aw-watcher-window_* and aw-watcher-web_* buckets."
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:119
#: app/templates/integrations/caldav_setup.html:186
msgid "Enable automatic sync"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:122
msgid "Automatically sync activity on a schedule. You can also trigger manual syncs."
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:128
#: app/templates/integrations/wizard_asana.html:128
#: app/templates/integrations/wizard_github.html:155
#: app/templates/integrations/wizard_gitlab.html:174
#: app/templates/integrations/wizard_jira.html:168
#: app/templates/integrations/wizard_quickbooks.html:125
#: app/templates/integrations/wizard_xero.html:108
msgid "Sync Schedule"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:133
#: app/templates/integrations/wizard_asana.html:131
#: app/templates/integrations/wizard_github.html:158
#: app/templates/integrations/wizard_gitlab.html:178
#: app/templates/integrations/wizard_jira.html:173
#: app/templates/integrations/wizard_quickbooks.html:128
#: app/templates/integrations/wizard_xero.html:111
msgid "Manual only"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:134
#: app/templates/integrations/wizard_asana.html:132
#: app/templates/integrations/wizard_github.html:159
#: app/templates/integrations/wizard_gitlab.html:179
#: app/templates/integrations/wizard_jira.html:176
#: app/templates/integrations/wizard_quickbooks.html:129
#: app/templates/integrations/wizard_xero.html:112
msgid "Every hour"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:135
#: app/templates/integrations/wizard_asana.html:133
#: app/templates/integrations/wizard_github.html:160
#: app/templates/integrations/wizard_gitlab.html:180
#: app/templates/integrations/wizard_jira.html:179
#: app/templates/integrations/wizard_quickbooks.html:130
#: app/templates/integrations/wizard_xero.html:113
#: app/templates/recurring_tasks/form.html:60
#: app/templates/reports/index.html:485
#: app/templates/reports/schedule_form.html:47
msgid "Daily"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:156
msgid "Test & Sync"
msgstr ""

#: app/templates/integrations/activitywatch_setup.html:158
msgid "After saving, you can test the connection and run a sync from the integration page."
msgstr ""

#: app/templates/integrations/caldav_setup.html:4
#: app/templates/integrations/caldav_setup.html:14
msgid "CalDAV Calendar Setup"
msgstr ""

#: app/templates/integrations/caldav_setup.html:15
msgid "Connect to a CalDAV server (e.g., Zimbra) to import calendar events as time entries"
msgstr ""

#: app/templates/integrations/caldav_setup.html:29
msgid "CalDAV Server URL"
msgstr ""

#: app/templates/integrations/caldav_setup.html:29
msgid "optional if calendar URL is provided"
msgstr ""

#: app/templates/integrations/caldav_setup.html:38
msgid "Base URL of your CalDAV server. Used for calendar discovery."
msgstr ""

#: app/templates/integrations/caldav_setup.html:39
msgid "Example: https://mail.example.com/dav for Zimbra"
msgstr ""

#: app/templates/integrations/caldav_setup.html:45
msgid "Calendar URL"
msgstr ""

#: app/templates/integrations/caldav_setup.html:45
msgid "optional if server URL is provided"
msgstr ""

#: app/templates/integrations/caldav_setup.html:54
msgid "Direct URL to your calendar collection. If provided, server URL is only used for discovery."
msgstr ""

#: app/templates/integrations/caldav_setup.html:60
msgid "Calendar Name"
msgstr ""

#: app/templates/integrations/caldav_setup.html:67
msgid "My Calendar"
msgstr ""

#: app/templates/integrations/caldav_setup.html:73
msgid "Authentication"
msgstr ""

#: app/templates/integrations/caldav_setup.html:87
#: app/templates/integrations/manage.html:245
msgid "Your CalDAV username (usually your email address)."
msgstr ""

#: app/templates/integrations/caldav_setup.html:102
#: app/templates/integrations/manage.html:260
msgid "Your CalDAV password or app-specific password."
msgstr ""

#: app/templates/integrations/caldav_setup.html:104
#: app/templates/integrations/manage.html:262
msgid "Leave empty to keep your current password."
msgstr ""

#: app/templates/integrations/caldav_setup.html:116
msgid "Verify SSL certificate"
msgstr ""

#: app/templates/integrations/caldav_setup.html:119
msgid "Uncheck only if using a self-signed certificate."
msgstr ""

#: app/templates/integrations/caldav_setup.html:145
msgid "Calendar events will be imported as time entries. If a project is selected, events will be assigned to that project."
msgstr ""

#: app/templates/integrations/caldav_setup.html:146
msgid "If an event title contains a project name, that project will be used instead."
msgstr ""

#: app/templates/integrations/caldav_setup.html:147
msgid "If no project is selected, events will be imported without a project."
msgstr ""

#: app/templates/integrations/caldav_setup.html:175
msgid "How many days back to import events from (default: 90)."
msgstr ""

#: app/templates/integrations/caldav_setup.html:189
msgid "Automatically sync calendar events every hour. You can still trigger manual syncs."
msgstr ""

#: app/templates/integrations/caldav_setup.html:212
msgid "After saving, you can test the connection and discover available calendars."
msgstr ""

#: app/templates/integrations/health.html:4
msgid "Integration Health"
msgstr ""

#: app/templates/integrations/health.html:23
#: app/templates/reports/builder.html:185
#: app/templates/reports/saved_views_list.html:28
#: app/templates/reports/saved_views_list.html:41
msgid "Scope"
msgstr ""

#: app/templates/integrations/health.html:25
msgid "Last sync"
msgstr ""

#: app/templates/integrations/health.html:26
msgid "Last status"
msgstr ""

#: app/templates/integrations/health.html:27
msgid "Credentials"
msgstr ""

#: app/templates/integrations/health.html:28
msgid "Last error"
msgstr ""

#: app/templates/integrations/health.html:62 app/utils/i18n_helpers.py:224
#: app/utils/i18n_helpers.py:236
msgid "Partial"
msgstr ""

#: app/templates/integrations/health.html:76
msgid "Needs refresh"
msgstr ""

#: app/templates/integrations/health.html:82
#: app/templates/integrations/manage.html:581
msgid "Expires"
msgstr ""

#: app/templates/integrations/health.html:105
msgid "Reset this integration? This removes stored OAuth tokens."
msgstr ""

#: app/templates/integrations/list.html:20
msgid "Connect your Time Tracker with external services. Configure integrations below to sync data, automate workflows, and enhance productivity."
msgstr ""

#: app/templates/integrations/list.html:34
msgid "OIDC / Single Sign-On"
msgstr ""

#: app/templates/integrations/list.html:36
msgid "Configure OpenID Connect authentication for Single Sign-On (SSO) with your identity provider"
msgstr ""

#: app/templates/integrations/list.html:76
msgid "Configure directory authentication via environment variables; use the wizard to build a working .env snippet and test connectivity."
msgstr ""

#: app/templates/integrations/list.html:131
#: app/templates/integrations/manage.html:556
msgid "Not Connected"
msgstr ""

#: app/templates/integrations/list.html:141
msgid "Synced"
msgstr ""

#: app/templates/integrations/list.html:146
msgid "Not Set Up"
msgstr ""

#: app/templates/integrations/list.html:164
#: app/templates/integrations/manage.html:716
msgid "Connect"
msgstr ""

#: app/templates/integrations/manage.html:4
#: app/templates/integrations/view.html:3
msgid "Integration"
msgstr ""

#: app/templates/integrations/manage.html:26
msgid "Guided Setup Wizard"
msgstr ""

#: app/templates/integrations/manage.html:29
msgid "Use our step-by-step wizard to configure this integration easily."
msgstr ""

#: app/templates/integrations/manage.html:34
msgid "Launch Setup Wizard"
msgstr ""

#: app/templates/integrations/manage.html:43
msgid "Linear API Key"
msgstr ""

#: app/templates/integrations/manage.html:50
msgid "Personal API Key"
msgstr ""

#: app/templates/integrations/manage.html:54
msgid "Create at linear.app/settings/api"
msgstr ""

#: app/templates/integrations/manage.html:57
msgid "From Linear: Settings → API → Personal API keys"
msgstr ""

#: app/templates/integrations/manage.html:60
msgid "Save API Key"
msgstr ""

#: app/templates/integrations/manage.html:68
msgid "OAuth Credentials Setup"
msgstr ""

#: app/templates/integrations/manage.html:101
#: app/templates/integrations/manage.html:141
msgid "Stored; leave empty to keep"
msgstr ""

#: app/templates/integrations/manage.html:101
msgid "Enter API secret"
msgstr ""

#: app/templates/integrations/manage.html:112
msgid "After saving API Key and Secret, you can connect Trello using OAuth flow."
msgstr ""

#: app/templates/integrations/manage.html:158
msgid "Use \"common\" for multi-tenant, or leave empty for common"
msgstr ""

#: app/templates/integrations/manage.html:223
msgid "CalDAV Authentication"
msgstr ""

#: app/templates/integrations/manage.html:226
msgid "CalDAV uses username and password authentication (not OAuth). Update your credentials below."
msgstr ""

#: app/templates/integrations/manage.html:281
msgid "Integration Configuration"
msgstr ""

#: app/templates/integrations/manage.html:284
msgid "Configure sync settings, data mappings, and other integration options."
msgstr ""

#: app/templates/integrations/manage.html:530
msgid "Connection Management"
msgstr ""

#: app/templates/integrations/manage.html:539
#: app/templates/integrations/view.html:119
msgid "Connector Error"
msgstr ""

#: app/templates/integrations/manage.html:566
msgid "Sync OK"
msgstr ""

#: app/templates/integrations/manage.html:570
msgid "Sync Error"
msgstr ""

#: app/templates/integrations/manage.html:583
msgid "No expiration"
msgstr ""

#: app/templates/integrations/manage.html:590
msgid "Not connected"
msgstr ""

#: app/templates/integrations/manage.html:596
#: app/templates/integrations/manage.html:603
#: app/templates/integrations/view.html:48
msgid "Last Sync"
msgstr ""

#: app/templates/integrations/manage.html:613
#: app/templates/integrations/view.html:65
msgid "Last Error"
msgstr ""

#: app/templates/integrations/manage.html:643
msgid "CalDAV uses username/password authentication. Click below to set up your CalDAV connection."
msgstr ""

#: app/templates/integrations/manage.html:646
msgid "Setup CalDAV Integration"
msgstr ""

#: app/templates/integrations/manage.html:653
msgid "ActivityWatch imports window and web activity from your local aw-server. Click below to configure."
msgstr ""

#: app/templates/integrations/manage.html:656
msgid "Setup ActivityWatch Integration"
msgstr ""

#: app/templates/integrations/manage.html:671
msgid "OAuth credentials are configured. You can now connect Trello."
msgstr ""

#: app/templates/integrations/manage.html:674
msgid "Connect Trello"
msgstr ""

#: app/templates/integrations/manage.html:681
msgid "Please configure Trello API key and token in the OAuth Credentials Setup section above."
msgstr ""

#: app/templates/integrations/manage.html:693
msgid "Please configure OAuth credentials in the section above before connecting."
msgstr ""

#: app/templates/integrations/manage.html:700
#: app/templates/integrations/manage.html:725
msgid "OAuth credentials need to be configured by an administrator first."
msgstr ""

#: app/templates/integrations/manage.html:706
msgid "Connect your Google Calendar account. You will be redirected to Google for authorization."
msgstr ""

#: app/templates/integrations/manage.html:708
msgid "Connect this integration. You will be redirected to the provider for authorization."
msgstr ""

#: app/templates/integrations/view.html:11
msgid "Back to Integrations"
msgstr ""

#: app/templates/integrations/view.html:17
msgid "Integration Status"
msgstr ""

#: app/templates/integrations/view.html:36
msgid "Token Expires"
msgstr ""

#: app/templates/integrations/view.html:74
msgid "Sync History"
msgstr ""

#: app/templates/integrations/view.html:107
msgid "No sync events yet"
msgstr ""

#: app/templates/integrations/view.html:123
msgid "Configure CalDAV Integration"
msgstr ""

#: app/templates/integrations/view.html:127
msgid "Configure ActivityWatch"
msgstr ""

#: app/templates/integrations/view.html:147
msgid "Are you sure you want to reset this integration? This will remove all credentials and configuration."
msgstr ""

#: app/templates/integrations/view.html:153
msgid "Are you sure you want to delete this integration? This action cannot be undone."
msgstr ""

#: app/templates/integrations/view.html:161
#: app/templates/integrations/view.html:165
msgid "Edit Configuration"
msgstr ""

#: app/templates/integrations/wizard_asana.html:6
#: app/templates/integrations/wizard_github.html:6
msgid "Step 1: OAuth Setup"
msgstr ""

#: app/templates/integrations/wizard_asana.html:12
msgid "Create an Asana app in Settings → Apps → Manage Developer Apps."
msgstr ""

#: app/templates/integrations/wizard_asana.html:18
msgid "Asana OAuth Client ID"
msgstr ""

#: app/templates/integrations/wizard_asana.html:22
#: app/templates/integrations/wizard_github.html:22
#: app/templates/integrations/wizard_gitlab.html:50
#: app/templates/integrations/wizard_jira.html:23
#: app/templates/integrations/wizard_microsoft_teams.html:50
#: app/templates/integrations/wizard_outlook_calendar.html:50
#: app/templates/integrations/wizard_quickbooks.html:22
#: app/templates/integrations/wizard_xero.html:22
msgid "Enter OAuth Client ID"
msgstr ""

#: app/templates/integrations/wizard_asana.html:27
msgid "Asana OAuth Client Secret"
msgstr ""

#: app/templates/integrations/wizard_asana.html:31
#: app/templates/integrations/wizard_github.html:31
#: app/templates/integrations/wizard_gitlab.html:59
#: app/templates/integrations/wizard_jira.html:35
#: app/templates/integrations/wizard_microsoft_teams.html:59
#: app/templates/integrations/wizard_outlook_calendar.html:59
#: app/templates/integrations/wizard_quickbooks.html:31
#: app/templates/integrations/wizard_xero.html:31
msgid "Enter OAuth Client Secret"
msgstr ""

#: app/templates/integrations/wizard_asana.html:46
msgid "Step 2: Workspace Selection"
msgstr ""

#: app/templates/integrations/wizard_asana.html:50
#: app/templates/integrations/wizard_asana.html:163
msgid "Workspace GID"
msgstr ""

#: app/templates/integrations/wizard_asana.html:57
msgid "Find your workspace GID in Asana workspace settings or API"
msgstr ""

#: app/templates/integrations/wizard_asana.html:65
msgid "Step 3: Project Selection"
msgstr ""

#: app/templates/integrations/wizard_asana.html:69
msgid "Project GIDs"
msgstr ""

#: app/templates/integrations/wizard_asana.html:76
msgid "Comma-separated list of specific project GIDs to sync. Leave empty to sync all projects in the workspace."
msgstr ""

#: app/templates/integrations/wizard_asana.html:84
msgid "Step 4: Sync Configuration"
msgstr ""

#: app/templates/integrations/wizard_asana.html:87
#: app/templates/integrations/wizard_asana.html:167
#: app/templates/integrations/wizard_github.html:77
#: app/templates/integrations/wizard_github.html:201
#: app/templates/integrations/wizard_gitlab.html:112
#: app/templates/integrations/wizard_gitlab.html:225
#: app/templates/integrations/wizard_jira.html:98
#: app/templates/integrations/wizard_jira.html:217
#: app/templates/integrations/wizard_quickbooks.html:78
#: app/templates/integrations/wizard_quickbooks.html:200
#: app/templates/integrations/wizard_xero.html:61
#: app/templates/integrations/wizard_xero.html:183
msgid "Sync Direction"
msgstr ""

#: app/templates/integrations/wizard_asana.html:91
msgid "Asana → TimeTracker (Import only)"
msgstr ""

#: app/templates/integrations/wizard_asana.html:94
msgid "TimeTracker → Asana (Export only)"
msgstr ""

#: app/templates/integrations/wizard_asana.html:97
#: app/templates/integrations/wizard_github.html:87
#: app/templates/integrations/wizard_gitlab.html:123
#: app/templates/integrations/wizard_jira.html:109
#: app/templates/integrations/wizard_quickbooks.html:88
#: app/templates/integrations/wizard_xero.html:71
msgid "Bidirectional (Two-way sync)"
msgstr ""

#: app/templates/integrations/wizard_asana.html:103
#: app/templates/integrations/wizard_asana.html:171
#: app/templates/integrations/wizard_github.html:93
#: app/templates/integrations/wizard_github.html:205
#: app/templates/integrations/wizard_gitlab.html:129
#: app/templates/integrations/wizard_gitlab.html:229
#: app/templates/integrations/wizard_jira.html:118
#: app/templates/integrations/wizard_jira.html:221
#: app/templates/integrations/wizard_quickbooks.html:94
#: app/templates/integrations/wizard_quickbooks.html:204
#: app/templates/integrations/wizard_xero.html:77
#: app/templates/integrations/wizard_xero.html:187
msgid "Items to Sync"
msgstr ""

#: app/templates/integrations/wizard_asana.html:122
msgid "Subtasks"
msgstr ""

#: app/templates/integrations/wizard_asana.html:141
#: app/templates/integrations/wizard_github.html:169
#: app/templates/integrations/wizard_gitlab.html:190
#: app/templates/integrations/wizard_jira.html:159
#: app/templates/integrations/wizard_jira.html:225
#: app/templates/integrations/wizard_quickbooks.html:138
#: app/templates/integrations/wizard_xero.html:121
msgid "Auto Sync"
msgstr ""

#: app/templates/integrations/wizard_asana.html:148
msgid "Sync Completed Tasks"
msgstr ""

#: app/templates/integrations/wizard_asana.html:155
#: app/templates/integrations/wizard_github.html:189
#: app/templates/integrations/wizard_gitlab.html:213
#: app/templates/integrations/wizard_jira.html:203
#: app/templates/integrations/wizard_quickbooks.html:188
#: app/templates/integrations/wizard_xero.html:171
msgid "Step 5: Review & Save"
msgstr ""

#: app/templates/integrations/wizard_asana.html:159
#: app/templates/integrations/wizard_github.html:193
#: app/templates/integrations/wizard_gitlab.html:217
#: app/templates/integrations/wizard_microsoft_teams.html:78
#: app/templates/integrations/wizard_quickbooks.html:192
#: app/templates/integrations/wizard_trello.html:63
#: app/templates/integrations/wizard_xero.html:175
msgid "Review your configuration and click \"Finish\" to save."
msgstr ""

#: app/templates/integrations/wizard_asana.html:188
#: app/templates/integrations/wizard_github.html:222
#: app/templates/integrations/wizard_gitlab.html:246
#: app/templates/integrations/wizard_jira.html:245
#: app/templates/integrations/wizard_microsoft_teams.html:99
#: app/templates/integrations/wizard_outlook_calendar.html:99
#: app/templates/integrations/wizard_quickbooks.html:221
#: app/templates/integrations/wizard_trello.html:89
#: app/templates/integrations/wizard_xero.html:204
#: app/templates/setup/initial_setup.html:288
msgid "Finish"
msgstr ""

#: app/templates/integrations/wizard_base.html:27
msgid "Step"
msgstr ""

#: app/templates/integrations/wizard_github.html:12
msgid "Create a GitHub OAuth App in Settings → Developer settings → OAuth Apps."
msgstr ""

#: app/templates/integrations/wizard_github.html:18
msgid "GitHub OAuth Client ID"
msgstr ""

#: app/templates/integrations/wizard_github.html:27
msgid "GitHub OAuth Client Secret"
msgstr ""

#: app/templates/integrations/wizard_github.html:46
msgid "Step 2: Repository Selection"
msgstr ""

#: app/templates/integrations/wizard_github.html:57
msgid "Comma-separated list of repositories (e.g., \"octocat/Hello-World\"). Leave empty to sync all accessible repositories."
msgstr ""

#: app/templates/integrations/wizard_github.html:66
#: app/templates/integrations/wizard_gitlab.html:97
#: app/templates/integrations/wizard_jira.html:192
msgid "Create Projects"
msgstr ""

#: app/templates/integrations/wizard_github.html:74
#: app/templates/integrations/wizard_jira.html:82
#: app/templates/integrations/wizard_quickbooks.html:75
#: app/templates/integrations/wizard_xero.html:58
msgid "Step 3: Sync Configuration"
msgstr ""

#: app/templates/integrations/wizard_github.html:81
msgid "GitHub → TimeTracker (Import only)"
msgstr ""

#: app/templates/integrations/wizard_github.html:84
msgid "TimeTracker → GitHub (Export only)"
msgstr ""

#: app/templates/integrations/wizard_github.html:106
msgid "Pull Requests"
msgstr ""

#: app/templates/integrations/wizard_github.html:112
msgid "Projects (Repositories)"
msgstr ""

#: app/templates/integrations/wizard_github.html:118
#: app/templates/integrations/wizard_gitlab.html:154
msgid "Issue States to Sync"
msgstr ""

#: app/templates/integrations/wizard_github.html:125
#: app/templates/integrations/wizard_gitlab.html:161
msgid "Open Issues"
msgstr ""

#: app/templates/integrations/wizard_github.html:131
#: app/templates/integrations/wizard_gitlab.html:167
msgid "Closed Issues"
msgstr ""

#: app/templates/integrations/wizard_github.html:140
msgid "Step 4: Webhook Setup"
msgstr ""

#: app/templates/integrations/wizard_github.html:144
#: app/templates/integrations/wizard_gitlab.html:199
#: app/templates/payment_gateways/create.html:49
msgid "Webhook Secret"
msgstr ""

#: app/templates/integrations/wizard_github.html:148
#: app/templates/integrations/wizard_gitlab.html:203
msgid "Enter webhook secret"
msgstr ""

#: app/templates/integrations/wizard_github.html:150
msgid "Secret token for verifying webhook signatures. Configure this in your GitHub repository webhook settings."
msgstr ""

#: app/templates/integrations/wizard_github.html:161
#: app/templates/integrations/wizard_gitlab.html:181
#: app/templates/integrations/wizard_jira.html:182
#: app/templates/recurring_tasks/form.html:61
#: app/templates/reports/index.html:486
#: app/templates/reports/schedule_form.html:48
msgid "Weekly"
msgstr ""

#: app/templates/integrations/wizard_github.html:172
msgid "Automatically sync when webhooks are received from GitHub"
msgstr ""

#: app/templates/integrations/wizard_github.html:178
msgid "Add this URL as a webhook in your GitHub repository settings:"
msgstr ""

#: app/templates/integrations/wizard_github.html:225
msgid "All repositories"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:6
msgid "Step 1: Instance Configuration"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:26
msgid "You can use GitLab.com or your self-hosted GitLab instance."
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:34
#: app/templates/integrations/wizard_microsoft_teams.html:34
#: app/templates/integrations/wizard_outlook_calendar.html:34
msgid "Step 2: OAuth Setup"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:40
msgid "Configure OAuth credentials. Create an application in GitLab Settings → Applications."
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:46
msgid "GitLab OAuth Client ID"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:55
msgid "GitLab OAuth Client Secret"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:66
msgid "Add this URL as an authorized redirect URI in your GitLab application settings:"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:77
msgid "Step 3: Repository Selection"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:81
msgid "Repository IDs"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:88
msgid "Comma-separated list of GitLab project IDs to sync. Leave empty to sync all accessible projects."
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:101
msgid "Automatically create projects in TimeTracker from GitLab projects"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:108
msgid "Step 4: Sync Settings"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:117
msgid "GitLab → TimeTracker (Import only)"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:120
msgid "TimeTracker → GitLab (Export only)"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:142
msgid "Merge Requests"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:194
msgid "Automatically sync when webhooks are received from GitLab"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:205
msgid "Secret token for verifying webhook signatures"
msgstr ""

#: app/templates/integrations/wizard_gitlab.html:221
msgid "Instance URL"
msgstr ""

#: app/templates/integrations/wizard_jira.html:6
msgid "Step 1: OAuth Setup & Basic Configuration"
msgstr ""

#: app/templates/integrations/wizard_jira.html:12
msgid "First, configure OAuth credentials for Jira. You can get these from Atlassian Developer Console."
msgstr ""

#: app/templates/integrations/wizard_jira.html:18
msgid "Jira OAuth Client ID"
msgstr ""

#: app/templates/integrations/wizard_jira.html:25
msgid "Get this from Atlassian Developer Console"
msgstr ""

#: app/templates/integrations/wizard_jira.html:31
msgid "Jira OAuth Client Secret"
msgstr ""

#: app/templates/integrations/wizard_jira.html:41
msgid "Jira Instance URL"
msgstr ""

#: app/templates/integrations/wizard_jira.html:48
msgid "Your Jira Cloud or Server URL (e.g., https://your-domain.atlassian.net)"
msgstr ""

#: app/templates/integrations/wizard_jira.html:55
msgid "Add this URL as an authorized redirect URI in your Jira OAuth app settings:"
msgstr ""

#: app/templates/integrations/wizard_jira.html:71
msgid "Click \"Test Connection\" to verify that Jira is accessible and OAuth credentials are correct."
msgstr ""

#: app/templates/integrations/wizard_jira.html:86
msgid "JQL Query"
msgstr ""

#: app/templates/integrations/wizard_jira.html:92
msgid "Jira Query Language query to filter issues to sync. Leave empty to sync all assigned issues."
msgstr ""

#: app/templates/integrations/wizard_jira.html:103
msgid "Jira → TimeTracker (Import only)"
msgstr ""

#: app/templates/integrations/wizard_jira.html:106
msgid "TimeTracker → Jira (Export only)"
msgstr ""

#: app/templates/integrations/wizard_jira.html:113
msgid "Choose how data flows between Jira and TimeTracker"
msgstr ""

#: app/templates/integrations/wizard_jira.html:126
msgid "Issues (Tasks)"
msgstr ""

#: app/templates/integrations/wizard_jira.html:163
msgid "Automatically sync when webhooks are received from Jira"
msgstr ""

#: app/templates/integrations/wizard_jira.html:196
msgid "Automatically create projects in TimeTracker from Jira projects"
msgstr ""

#: app/templates/integrations/wizard_jira.html:208
msgid "Review your configuration below. Click \"Finish\" to save and complete the setup."
msgstr ""

#: app/templates/integrations/wizard_jira.html:213
msgid "Jira URL"
msgstr ""

#: app/templates/integrations/wizard_jira.html:265
#: app/templates/integrations/wizard_trello.html:100
msgid "Please test the connection before proceeding."
msgstr ""

#: app/templates/integrations/wizard_jira.html:277
msgid "Please enter Jira URL first."
msgstr ""

#: app/templates/integrations/wizard_microsoft_teams.html:6
#: app/templates/integrations/wizard_outlook_calendar.html:6
msgid "Step 1: Tenant ID Configuration"
msgstr ""

#: app/templates/integrations/wizard_microsoft_teams.html:12
#: app/templates/integrations/wizard_outlook_calendar.html:12
msgid "Enter your Azure AD tenant ID. Use \"common\" for multi-tenant apps or leave empty for default."
msgstr ""

#: app/templates/integrations/wizard_microsoft_teams.html:40
#: app/templates/integrations/wizard_outlook_calendar.html:40
msgid "Configure OAuth credentials from Azure AD App Registrations."
msgstr ""

#: app/templates/integrations/wizard_microsoft_teams.html:46
msgid "Microsoft Teams OAuth Client ID"
msgstr ""

#: app/templates/integrations/wizard_microsoft_teams.html:55
msgid "Microsoft Teams OAuth Client Secret"
msgstr ""

#: app/templates/integrations/wizard_microsoft_teams.html:74
#: app/templates/integrations/wizard_outlook_calendar.html:74
#: app/templates/integrations/wizard_trello.html:59
msgid "Step 3: Review & Save"
msgstr ""

#: app/templates/integrations/wizard_outlook_calendar.html:46
msgid "Outlook Calendar OAuth Client ID"
msgstr ""

#: app/templates/integrations/wizard_outlook_calendar.html:55
msgid "Outlook Calendar OAuth Client Secret"
msgstr ""

#: app/templates/integrations/wizard_outlook_calendar.html:78
msgid "Review your configuration and click \"Finish\" to save. After saving, users can connect their Outlook Calendar accounts."
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:6
#: app/templates/integrations/wizard_xero.html:6
msgid "Step 1: OAuth Connection"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:12
msgid "Configure OAuth credentials from Intuit Developer Dashboard."
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:18
msgid "QuickBooks OAuth Client ID"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:27
msgid "QuickBooks OAuth Client Secret"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:38
msgid "After saving OAuth credentials, you will need to connect your QuickBooks account via OAuth."
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:46
msgid "Step 2: Company Selection"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:50
msgid "Company ID (Realm ID)"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:57
msgid "Find your company ID (realm ID) in QuickBooks after connecting via OAuth."
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:65
msgid "Use Sandbox"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:68
msgid "Use QuickBooks sandbox environment for testing"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:82
msgid "QuickBooks → TimeTracker (Import only)"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:85
msgid "TimeTracker → QuickBooks (Export only)"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:119
msgid "Customers"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:145
#: app/templates/integrations/wizard_xero.html:128
msgid "Step 4: Account Mappings"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:149
msgid "Default Expense Account ID"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:156
msgid "QuickBooks account ID to use for expenses when no mapping is configured"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:162
msgid "Customer Mappings"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:162
#: app/templates/integrations/wizard_quickbooks.html:174
#: app/templates/integrations/wizard_xero.html:145
#: app/templates/integrations/wizard_xero.html:157
msgid "JSON"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:168
msgid "Map TimeTracker client IDs to QuickBooks customer IDs (JSON format)"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:174
#: app/templates/integrations/wizard_xero.html:157
msgid "Account Mappings"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:180
msgid "Map TimeTracker expense category IDs to QuickBooks account IDs (JSON format)"
msgstr ""

#: app/templates/integrations/wizard_quickbooks.html:196
msgid "Company ID"
msgstr ""

#: app/templates/integrations/wizard_trello.html:6
msgid "Step 1: API Keys Setup"
msgstr ""

#: app/templates/integrations/wizard_trello.html:12
msgid "Get your API key and secret from"
msgstr ""

#: app/templates/integrations/wizard_trello.html:23
msgid "Enter API Key"
msgstr ""

#: app/templates/integrations/wizard_trello.html:32
msgid "Enter API Secret"
msgstr ""

#: app/templates/integrations/wizard_trello.html:34
msgid "Generate a token after creating the API key"
msgstr ""

#: app/templates/integrations/wizard_trello.html:48
msgid "Click \"Test Connection\" to verify that your Trello API credentials are correct."
msgstr ""

#: app/templates/integrations/wizard_trello.html:67
#: app/templates/payment_gateways/create.html:39
msgid "API Key"
msgstr ""

#: app/templates/integrations/wizard_trello.html:72
msgid "Not tested"
msgstr ""

#: app/templates/integrations/wizard_trello.html:92
msgid "Connection failed"
msgstr ""

#: app/templates/integrations/wizard_xero.html:12
msgid "Configure OAuth credentials from Xero Developer Portal."
msgstr ""

#: app/templates/integrations/wizard_xero.html:18
msgid "Xero OAuth Client ID"
msgstr ""

#: app/templates/integrations/wizard_xero.html:27
msgid "Xero OAuth Client Secret"
msgstr ""

#: app/templates/integrations/wizard_xero.html:39
msgid "Step 2: Tenant Selection"
msgstr ""

#: app/templates/integrations/wizard_xero.html:50
msgid "Find your tenant ID (organisation ID) in Xero after connecting via OAuth."
msgstr ""

#: app/templates/integrations/wizard_xero.html:65
msgid "Xero → TimeTracker (Import only)"
msgstr ""

#: app/templates/integrations/wizard_xero.html:68
msgid "TimeTracker → Xero (Export only)"
msgstr ""

#: app/templates/integrations/wizard_xero.html:132
msgid "Default Expense Account Code"
msgstr ""

#: app/templates/integrations/wizard_xero.html:139
msgid "Xero account code to use for expenses when no mapping is configured"
msgstr ""

#: app/templates/integrations/wizard_xero.html:145
msgid "Contact Mappings"
msgstr ""

#: app/templates/integrations/wizard_xero.html:151
msgid "Map TimeTracker client IDs to Xero Contact IDs (JSON format)"
msgstr ""

#: app/templates/integrations/wizard_xero.html:163
msgid "Map TimeTracker expense category IDs to Xero account codes (JSON format)"
msgstr ""

#: app/templates/inventory/adjustments/form.html:23
#: app/templates/inventory/adjustments/list.html:30
#: app/templates/inventory/movements/form.html:44
#: app/templates/inventory/purchase_orders/form.html:77
#: app/templates/inventory/reports/movement_history.html:30
#: app/templates/inventory/transfers/form.html:23
msgid "Stock Item"
msgstr ""

#: app/templates/inventory/adjustments/form.html:25
#: app/templates/inventory/movements/form.html:46
#: app/templates/inventory/purchase_orders/form.html:122
#: app/templates/inventory/transfers/form.html:25
msgid "Select Item"
msgstr ""

#: app/templates/inventory/adjustments/form.html:32
#: app/templates/inventory/adjustments/list.html:21
#: app/templates/inventory/adjustments/list.html:58
#: app/templates/inventory/adjustments/list.html:73
#: app/templates/inventory/low_stock/list.html:22
#: app/templates/inventory/low_stock/list.html:34
#: app/templates/inventory/movements/form.html:53
#: app/templates/inventory/movements/list.html:56
#: app/templates/inventory/movements/list.html:74
#: app/templates/inventory/purchase_orders/form.html:82
#: app/templates/inventory/reports/low_stock.html:31
#: app/templates/inventory/reports/low_stock.html:48
#: app/templates/inventory/reports/movement_history.html:21
#: app/templates/inventory/reports/movement_history.html:72
#: app/templates/inventory/reports/movement_history.html:90
#: app/templates/inventory/reports/valuation.html:21
#: app/templates/inventory/reports/valuation.html:57
#: app/templates/inventory/reports/valuation.html:69
#: app/templates/inventory/reservations/list.html:40
#: app/templates/inventory/reservations/list.html:58
#: app/templates/inventory/stock_items/history.html:22
#: app/templates/inventory/stock_items/history.html:63
#: app/templates/inventory/stock_items/history.html:76
#: app/templates/inventory/stock_items/view.html:129
#: app/templates/inventory/stock_items/view.html:139
#: app/templates/inventory/stock_items/view.html:241
#: app/templates/inventory/stock_items/view.html:255
#: app/templates/inventory/stock_levels/item.html:23
#: app/templates/inventory/stock_levels/item.html:34
#: app/templates/inventory/stock_levels/list.html:20
#: app/templates/inventory/stock_levels/list.html:47
#: app/templates/inventory/stock_levels/list.html:58
#: app/templates/kiosk/dashboard.html:150 app/templates/quotes/create.html:63
#: app/templates/quotes/edit.html:68
msgid "Warehouse"
msgstr ""

#: app/templates/inventory/adjustments/form.html:34
#: app/templates/inventory/movements/form.html:55
#: app/templates/inventory/purchase_orders/form.html:131
#: app/templates/invoices/edit.html:105 app/templates/quotes/edit.html:98
msgid "Select Warehouse"
msgstr ""

#: app/templates/inventory/adjustments/form.html:41
msgid "Adjustment Quantity"
msgstr ""

#: app/templates/inventory/adjustments/form.html:43
msgid "Use positive values to increase stock, negative values to decrease"
msgstr ""

#: app/templates/inventory/adjustments/form.html:47
msgid "e.g., Physical count correction, Damage, Found items"
msgstr ""

#: app/templates/inventory/adjustments/form.html:51
msgid "Additional details about this adjustment"
msgstr ""

#: app/templates/inventory/adjustments/form.html:59
msgid "Record Adjustment"
msgstr ""

#: app/templates/inventory/adjustments/list.html:23
#: app/templates/inventory/reports/movement_history.html:23
#: app/templates/inventory/reports/valuation.html:23
#: app/templates/inventory/stock_items/history.html:24
#: app/templates/inventory/stock_levels/list.html:22
msgid "All Warehouses"
msgstr ""

#: app/templates/inventory/adjustments/list.html:32
#: app/templates/inventory/reports/movement_history.html:32
msgid "All Items"
msgstr ""

#: app/templates/inventory/adjustments/list.html:39
#: app/templates/inventory/reports/movement_history.html:53
#: app/templates/inventory/reports/turnover.html:21
#: app/templates/inventory/stock_items/history.html:45
#: app/templates/inventory/transfers/list.html:21
msgid "Date From"
msgstr ""

#: app/templates/inventory/adjustments/list.html:46
#: app/templates/inventory/reports/movement_history.html:60
#: app/templates/inventory/reports/turnover.html:25
#: app/templates/inventory/stock_items/history.html:52
#: app/templates/inventory/transfers/list.html:25
msgid "Date To"
msgstr ""

#: app/templates/inventory/adjustments/list.html:57
#: app/templates/inventory/adjustments/list.html:68
#: app/templates/inventory/low_stock/list.html:23
#: app/templates/inventory/low_stock/list.html:35
#: app/templates/inventory/movements/list.html:55
#: app/templates/inventory/movements/list.html:69
#: app/templates/inventory/purchase_orders/view.html:90
#: app/templates/inventory/purchase_orders/view.html:101
#: app/templates/inventory/reports/low_stock.html:29
#: app/templates/inventory/reports/low_stock.html:42
#: app/templates/inventory/reports/movement_history.html:71
#: app/templates/inventory/reports/movement_history.html:85
#: app/templates/inventory/reports/turnover.html:44
#: app/templates/inventory/reports/turnover.html:55
#: app/templates/inventory/reports/valuation.html:58
#: app/templates/inventory/reports/valuation.html:74
#: app/templates/inventory/reservations/list.html:39
#: app/templates/inventory/reservations/list.html:53
#: app/templates/inventory/stock_levels/list.html:48
#: app/templates/inventory/stock_levels/list.html:59
#: app/templates/inventory/stock_levels/warehouse.html:45
#: app/templates/inventory/stock_levels/warehouse.html:58
#: app/templates/inventory/suppliers/view.html:114
#: app/templates/inventory/suppliers/view.html:125
#: app/templates/inventory/transfers/list.html:39
#: app/templates/inventory/transfers/list.html:54
#: app/templates/inventory/warehouses/view.html:84
#: app/templates/inventory/warehouses/view.html:95
#: app/templates/inventory/warehouses/view.html:130
#: app/templates/inventory/warehouses/view.html:140
msgid "Item"
msgstr ""

#: app/templates/inventory/adjustments/list.html:87
msgid "No adjustments found."
msgstr ""

#: app/templates/inventory/low_stock/list.html:24
#: app/templates/inventory/low_stock/list.html:40
#: app/templates/inventory/stock_items/view.html:130
#: app/templates/inventory/stock_items/view.html:144
#: app/templates/inventory/stock_levels/list.html:49
#: app/templates/inventory/stock_levels/list.html:64
#: app/templates/inventory/warehouses/view.html:86
#: app/templates/inventory/warehouses/view.html:101
msgid "On Hand"
msgstr ""

#: app/templates/inventory/low_stock/list.html:25
#: app/templates/inventory/low_stock/list.html:41
#: app/templates/inventory/reports/low_stock.html:33
#: app/templates/inventory/reports/low_stock.html:54
#: app/templates/inventory/stock_items/form.html:69
#: app/templates/inventory/stock_items/view.html:91
#: app/templates/inventory/stock_levels/warehouse.html:51
#: app/templates/inventory/stock_levels/warehouse.html:70
msgid "Reorder Point"
msgstr ""

#: app/templates/inventory/low_stock/list.html:26
#: app/templates/inventory/low_stock/list.html:42
#: app/templates/inventory/reports/low_stock.html:34
#: app/templates/inventory/reports/low_stock.html:55
msgid "Shortfall"
msgstr ""

#: app/templates/inventory/low_stock/list.html:27
#: app/templates/inventory/low_stock/list.html:43
msgid "Reorder Qty"
msgstr ""

#: app/templates/inventory/low_stock/list.html:55
msgid "No low stock alerts. All items are above reorder point."
msgstr ""

#: app/templates/inventory/movements/form.html:20
msgid "Use a positive quantity (items coming back)"
msgstr ""

#: app/templates/inventory/movements/form.html:21
msgid "Use a negative quantity (items written off)"
msgstr ""

#: app/templates/inventory/movements/form.html:22
msgid "Quantity to revalue (positive)"
msgstr ""

#: app/templates/inventory/movements/form.html:23
#: app/templates/inventory/movements/form.html:64
msgid "Use positive values for additions, negative for removals"
msgstr ""

#: app/templates/inventory/movements/form.html:24
msgid "Return requires a positive quantity."
msgstr ""

#: app/templates/inventory/movements/form.html:25
msgid "Waste requires a negative quantity."
msgstr ""

#: app/templates/inventory/movements/form.html:26
msgid "Devaluation requires a trackable item with a default cost."
msgstr ""

#: app/templates/inventory/movements/form.html:30
#: app/templates/inventory/movements/list.html:21
#: app/templates/inventory/reports/movement_history.html:39
#: app/templates/inventory/stock_items/history.html:31
msgid "Movement Type"
msgstr ""

#: app/templates/inventory/movements/form.html:37
#: app/templates/inventory/movements/list.html:29
#: app/templates/inventory/reports/movement_history.html:47
#: app/templates/inventory/stock_items/history.html:39
msgid "Return"
msgstr ""

#: app/templates/inventory/movements/form.html:38
#: app/templates/inventory/movements/list.html:30
#: app/templates/inventory/reports/movement_history.html:48
#: app/templates/inventory/stock_items/history.html:40
msgid "Waste"
msgstr ""

#: app/templates/inventory/movements/form.html:39
#: app/templates/inventory/movements/form.html:73
#: app/templates/inventory/movements/list.html:31
#: app/templates/inventory/reports/movement_history.html:49
#: app/templates/inventory/stock_items/history.html:41
#: app/templates/inventory/stock_items/view.html:180
#: app/templates/inventory/stock_items/view.html:191
msgid "Devaluation"
msgstr ""

#: app/templates/inventory/movements/form.html:41
msgid "You can apply devaluation below to record returned or wasted items at a reduced cost."
msgstr ""

#: app/templates/inventory/movements/form.html:74
msgid "Devalue items without creating a new stock item"
msgstr ""

#: app/templates/inventory/movements/form.html:78
msgid "Apply devaluation"
msgstr ""

#: app/templates/inventory/movements/form.html:84
#: app/templates/payments/list.html:158
msgid "Method"
msgstr ""

#: app/templates/inventory/movements/form.html:86
msgid "Percent off default cost"
msgstr ""

#: app/templates/inventory/movements/form.html:87
msgid "Fixed new unit cost"
msgstr ""

#: app/templates/inventory/movements/form.html:92
msgid "Percent"
msgstr ""

#: app/templates/inventory/movements/form.html:94
msgid "Example: 30 = reduce cost by 30%"
msgstr ""

#: app/templates/inventory/movements/form.html:98
msgid "New Unit Cost"
msgstr ""

#: app/templates/inventory/movements/form.html:105
msgid "e.g., Physical count correction"
msgstr ""

#: app/templates/inventory/movements/form.html:117
msgid "Record Movement"
msgstr ""

#: app/templates/inventory/movements/list.html:35
msgid "Reference Type"
msgstr ""

#: app/templates/inventory/movements/list.html:41
#: app/templates/timer/edit_timer.html:312
#: app/templates/timer/edit_timer.html:435
msgid "Manual"
msgstr ""

#: app/templates/inventory/movements/list.html:59
#: app/templates/inventory/movements/list.html:105
#: app/templates/inventory/purchase_orders/form.html:80
#: app/templates/inventory/purchase_orders/view.html:94
#: app/templates/inventory/purchase_orders/view.html:115
#: app/templates/inventory/reports/movement_history.html:75
#: app/templates/inventory/reports/movement_history.html:121
#: app/templates/inventory/reports/valuation.html:62
#: app/templates/inventory/reports/valuation.html:82
#: app/templates/inventory/stock_items/form.html:113
#: app/templates/inventory/stock_items/form.html:164
#: app/templates/inventory/stock_items/history.html:66
#: app/templates/inventory/stock_items/history.html:107
#: app/templates/inventory/stock_items/view.html:179
#: app/templates/inventory/stock_items/view.html:190
#: app/templates/inventory/suppliers/view.html:116
#: app/templates/inventory/suppliers/view.html:131
msgid "Unit Cost"
msgstr ""

#: app/templates/inventory/movements/list.html:60
#: app/templates/inventory/movements/list.html:127
#: app/templates/inventory/reports/movement_history.html:76
#: app/templates/inventory/reports/movement_history.html:143
#: app/templates/inventory/reservations/list.html:43
#: app/templates/inventory/reservations/list.html:65
#: app/templates/inventory/stock_items/history.html:67
#: app/templates/inventory/stock_items/history.html:129
msgid "Reference"
msgstr ""

#: app/templates/inventory/movements/list.html:97
#: app/templates/inventory/reports/movement_history.html:113
#: app/templates/inventory/stock_items/history.html:99
#: app/templates/inventory/stock_items/view.html:205
msgid "Devalued"
msgstr ""

#: app/templates/inventory/movements/list.html:150
msgid "No stock movements found."
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:29
#: app/templates/inventory/purchase_orders/list.html:32
#: app/templates/inventory/purchase_orders/list.html:51
#: app/templates/inventory/purchase_orders/list.html:67
#: app/templates/inventory/purchase_orders/view.html:50
msgid "Supplier"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:31
#: app/templates/inventory/stock_items/form.html:107
#: app/templates/inventory/stock_items/form.html:155
msgid "Select Supplier"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:38
#: app/templates/inventory/purchase_orders/list.html:52
#: app/templates/inventory/purchase_orders/list.html:72
#: app/templates/inventory/purchase_orders/view.html:58
msgid "Order Date"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:42
msgid "Expected Delivery Date"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:56
msgid "Notes visible to supplier"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:60
msgid "Internal notes (not visible to supplier)"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:69
#: app/templates/inventory/purchase_orders/view.html:85
#: app/templates/invoices/edit.html:334
msgid "Items"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:72
#: app/templates/invoices/edit.html:66
msgid "Add Item"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:79
#: app/templates/inventory/purchase_orders/form.html:148
#: app/templates/invoices/edit.html:235 app/templates/invoices/edit.html:260
#: app/templates/invoices/edit.html:620 app/templates/quotes/create.html:65
#: app/templates/quotes/create.html:128 app/templates/quotes/edit.html:70
#: app/templates/quotes/edit.html:108 app/templates/quotes/edit.html:202
msgid "Qty"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:83
#: app/templates/inventory/purchase_orders/form.html:152
#: app/templates/inventory/stock_items/form.html:112
#: app/templates/inventory/stock_items/form.html:163
#: app/templates/inventory/suppliers/view.html:115
#: app/templates/inventory/suppliers/view.html:130
msgid "Supplier SKU"
msgstr ""

#: app/templates/inventory/purchase_orders/form.html:104
msgid "Create Purchase Order"
msgstr ""

#: app/templates/inventory/purchase_orders/list.html:24
#: app/templates/inventory/purchase_orders/list.html:76
#: app/templates/inventory/purchase_orders/view.html:37
#: app/templates/invoices/list.html:129
#: app/templates/quotes/_quotes_list.html:62 app/templates/quotes/list.html:81
#: app/templates/quotes/view.html:71 app/utils/i18n_helpers.py:64
#: app/utils/i18n_helpers.py:76
msgid "Draft"
msgstr ""

#: app/templates/inventory/purchase_orders/list.html:25
#: app/templates/inventory/purchase_orders/list.html:78
#: app/templates/inventory/purchase_orders/view.html:39
#: app/templates/invoices/list.html:130
#: app/templates/quotes/_quotes_list.html:64 app/templates/quotes/list.html:82
#: app/templates/quotes/view.html:73 app/utils/i18n_helpers.py:65
#: app/utils/i18n_helpers.py:77
msgid "Sent"
msgstr ""

#: app/templates/inventory/purchase_orders/list.html:26
#: app/templates/inventory/purchase_orders/list.html:80
#: app/templates/inventory/purchase_orders/view.html:41
msgid "Confirmed"
msgstr ""

#: app/templates/inventory/purchase_orders/list.html:27
#: app/templates/inventory/purchase_orders/list.html:82
#: app/templates/inventory/purchase_orders/view.html:43
#: app/templates/inventory/purchase_orders/view.html:162
msgid "Received"
msgstr ""

#: app/templates/inventory/purchase_orders/list.html:34
msgid "All Suppliers"
msgstr ""

#: app/templates/inventory/purchase_orders/list.html:50
#: app/templates/inventory/purchase_orders/list.html:62
#: app/templates/inventory/purchase_orders/view.html:30
msgid "PO Number"
msgstr ""

#: app/templates/inventory/purchase_orders/list.html:53
#: app/templates/inventory/purchase_orders/list.html:73
#: app/templates/inventory/purchase_orders/view.html:63
msgid "Expected Delivery"
msgstr ""

#: app/templates/inventory/purchase_orders/list.html:99
msgid "No purchase orders found."
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:19
msgid "Are you sure you want to cancel this purchase order?"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:20
msgid "Are you sure you want to delete this purchase order?"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:27
msgid "Purchase Order Details"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:69
#: app/templates/inventory/purchase_orders/view.html:153
msgid "Received Date"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:92
#: app/templates/inventory/purchase_orders/view.html:111
msgid "Quantity Ordered"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:93
#: app/templates/inventory/purchase_orders/view.html:112
msgid "Quantity Received"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:95
#: app/templates/inventory/purchase_orders/view.html:116
msgid "Line Total"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:127
msgid "Shipping"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:149
msgid "Receive Purchase Order"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:167
msgid "Mark as Received"
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:174
msgid "No items in this purchase order."
msgstr ""

#: app/templates/inventory/purchase_orders/view.html:185
#: app/templates/inventory/reports/dashboard.html:21
#: app/templates/inventory/warehouses/view.html:168
msgid "Total Items"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:33
msgid "Total Warehouses"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:45
msgid "Total Inventory Value"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:57
msgid "Low Stock Items"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:68
msgid "Available Reports"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:72
msgid "Stock Valuation"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:73
msgid "View inventory value by warehouse"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:78
msgid "Movement History"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:79
msgid "Detailed movement log"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:84
msgid "Turnover Analysis"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:85
msgid "Inventory turnover rates"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:90
msgid "Low Stock Report"
msgstr ""

#: app/templates/inventory/reports/dashboard.html:91
msgid "Items below reorder point"
msgstr ""

#: app/templates/inventory/reports/low_stock.html:22
#, python-format
msgid "Found %(count)s items below their reorder point."
msgstr ""

#: app/templates/inventory/reports/low_stock.html:32
#: app/templates/inventory/reports/low_stock.html:53
#: app/templates/inventory/stock_levels/item.html:24
#: app/templates/inventory/stock_levels/item.html:39
#: app/templates/inventory/stock_levels/warehouse.html:48
#: app/templates/inventory/stock_levels/warehouse.html:65
msgid "Quantity On Hand"
msgstr ""

#: app/templates/inventory/reports/low_stock.html:35
#: app/templates/inventory/reports/low_stock.html:56
#: app/templates/inventory/stock_items/form.html:73
#: app/templates/inventory/stock_items/view.html:95
msgid "Reorder Quantity"
msgstr ""

#: app/templates/inventory/reports/low_stock.html:59
msgid "Create PO"
msgstr ""

#: app/templates/inventory/reports/low_stock.html:69
msgid "All Stock Levels are Good"
msgstr ""

#: app/templates/inventory/reports/low_stock.html:70
msgid "No items are currently below their reorder point."
msgstr ""

#: app/templates/inventory/reports/movement_history.html:170
msgid "No movements found."
msgstr ""

#: app/templates/inventory/reports/turnover.html:37
msgid "Turnover rate indicates how many times inventory is sold and replaced in a year. Higher rates indicate faster-moving items."
msgstr ""

#: app/templates/inventory/reports/turnover.html:46
#: app/templates/inventory/reports/turnover.html:61
msgid "Total Sold"
msgstr ""

#: app/templates/inventory/reports/turnover.html:47
#: app/templates/inventory/reports/turnover.html:62
msgid "Avg Stock Level"
msgstr ""

#: app/templates/inventory/reports/turnover.html:48
#: app/templates/inventory/reports/turnover.html:63
msgid "Turnover Rate"
msgstr ""

#: app/templates/inventory/reports/turnover.html:66
msgid "Fast Moving"
msgstr ""

#: app/templates/inventory/reports/turnover.html:68
#: app/templates/inventory/stock_items/view.html:209
msgid "Normal"
msgstr ""

#: app/templates/inventory/reports/turnover.html:70
msgid "Slow Moving"
msgstr ""

#: app/templates/inventory/reports/turnover.html:72
msgid "Very Slow"
msgstr ""

#: app/templates/inventory/reports/turnover.html:79
msgid "No sales data found for the selected period."
msgstr ""

#: app/templates/inventory/reports/valuation.html:46
msgid "Inventory Valuation"
msgstr ""

#: app/templates/inventory/reports/valuation.html:48
#: app/templates/inventory/reports/valuation.html:63
#: app/templates/inventory/reports/valuation.html:83
#: app/templates/inventory/reports/valuation.html:95
#: app/templates/quotes/list.html:25
msgid "Total Value"
msgstr ""

#: app/templates/inventory/reports/valuation.html:88
msgid "No items found with cost information."
msgstr ""

#: app/templates/inventory/reservations/list.html:23
#: app/templates/inventory/reservations/list.html:80
#: app/templates/inventory/stock_items/view.html:131
#: app/templates/inventory/stock_items/view.html:145
#: app/templates/inventory/stock_levels/list.html:50
#: app/templates/inventory/stock_levels/list.html:65
#: app/templates/inventory/warehouses/view.html:87
#: app/templates/inventory/warehouses/view.html:102
msgid "Reserved"
msgstr ""

#: app/templates/inventory/reservations/list.html:24
#: app/templates/inventory/reservations/list.html:82
msgid "Fulfilled"
msgstr ""

#: app/templates/inventory/reservations/list.html:45
#: app/templates/inventory/reservations/list.html:89
msgid "Reserved At"
msgstr ""

#: app/templates/inventory/reservations/list.html:46
#: app/templates/inventory/reservations/list.html:90
msgid "Expires At"
msgstr ""

#: app/templates/inventory/reservations/list.html:104
msgid "Fulfill this reservation?"
msgstr ""

#: app/templates/inventory/reservations/list.html:110
msgid "Cancel this reservation?"
msgstr ""

#: app/templates/inventory/reservations/list.html:120
msgid "No reservations found."
msgstr ""

#: app/templates/inventory/stock_items/form.html:45
#: app/templates/inventory/stock_items/list.html:52
#: app/templates/inventory/stock_items/list.html:69
#: app/templates/inventory/stock_items/view.html:36
#: app/templates/kiosk/dashboard.html:132
#: app/templates/quotes/_edit_quote_form_scripts.html:174
#: app/templates/quotes/create.html:66 app/templates/quotes/edit.html:71
#: app/templates/quotes/edit.html:109
msgid "Unit"
msgstr ""

#: app/templates/inventory/stock_items/form.html:61
#: app/templates/inventory/stock_items/view.html:50
msgid "Default Cost"
msgstr ""

#: app/templates/inventory/stock_items/form.html:65
#: app/templates/inventory/stock_items/view.html:54
msgid "Default Price"
msgstr ""

#: app/templates/inventory/stock_items/form.html:77
msgid "Image URL"
msgstr ""

#: app/templates/inventory/stock_items/form.html:91
msgid "Track Inventory"
msgstr ""

#: app/templates/inventory/stock_items/form.html:99
msgid "Manage multiple suppliers for this item with different pricing."
msgstr ""

#: app/templates/inventory/stock_items/form.html:114
#: app/templates/inventory/stock_items/form.html:165
#: app/templates/inventory/suppliers/view.html:117
#: app/templates/inventory/suppliers/view.html:138
msgid "MOQ"
msgstr ""

#: app/templates/inventory/stock_items/form.html:115
#: app/templates/inventory/stock_items/form.html:166
msgid "Lead Time (days)"
msgstr ""

#: app/templates/inventory/stock_items/form.html:118
#: app/templates/inventory/stock_items/form.html:169
#: app/templates/inventory/stock_items/view.html:71
#: app/templates/inventory/suppliers/view.html:119
#: app/templates/inventory/suppliers/view.html:146
#: app/templates/inventory/suppliers/view.html:149
msgid "Preferred"
msgstr ""

#: app/templates/inventory/stock_items/form.html:129
msgid "Add Supplier"
msgstr ""

#: app/templates/inventory/stock_items/history.html:156
msgid "No movement history found for this item."
msgstr ""

#: app/templates/inventory/stock_items/list.html:22
msgid "SKU, Name, Barcode..."
msgstr ""

#: app/templates/inventory/stock_items/list.html:36
#: app/templates/inventory/suppliers/list.html:27
msgid "Active Only"
msgstr ""

#: app/templates/inventory/stock_items/list.html:53
#: app/templates/inventory/stock_items/list.html:70
msgid "Total Qty"
msgstr ""

#: app/templates/inventory/stock_items/list.html:54
#: app/templates/inventory/stock_items/list.html:77
#: app/templates/inventory/stock_items/view.html:132
#: app/templates/inventory/stock_items/view.html:146
#: app/templates/inventory/stock_levels/item.html:26
#: app/templates/inventory/stock_levels/item.html:41
#: app/templates/inventory/stock_levels/list.html:51
#: app/templates/inventory/stock_levels/list.html:66
#: app/templates/inventory/stock_levels/warehouse.html:50
#: app/templates/inventory/stock_levels/warehouse.html:67
#: app/templates/inventory/warehouses/view.html:88
#: app/templates/inventory/warehouses/view.html:103
#: app/templates/workforce/dashboard.html:212
msgid "Available"
msgstr ""

#: app/templates/inventory/stock_items/list.html:81
#: app/templates/inventory/stock_items/view.html:149
#: app/templates/inventory/stock_levels/list.html:69
#: app/templates/inventory/stock_levels/warehouse.html:73
#: app/templates/inventory/warehouses/view.html:106
msgid "Low Stock"
msgstr ""

#: app/templates/inventory/stock_items/list.html:108
msgid "No stock items found."
msgstr ""

#: app/templates/inventory/stock_items/view.html:25
msgid "Item Details"
msgstr ""

#: app/templates/inventory/stock_items/view.html:110
msgid "Trackable"
msgstr ""

#: app/templates/inventory/stock_items/view.html:125
msgid "Stock Levels by Warehouse"
msgstr ""

#: app/templates/inventory/stock_items/view.html:163
msgid "Stock Breakdown by Valuation"
msgstr ""

#: app/templates/inventory/stock_items/view.html:164
msgid "Detailed breakdown showing remaining stock with different devaluation rates"
msgstr ""

#: app/templates/inventory/stock_items/view.html:198
msgid "No devaluation"
msgstr ""

#: app/templates/inventory/stock_items/view.html:235
#: app/templates/inventory/warehouses/view.html:125
msgid "Recent Stock Movements"
msgstr ""

#: app/templates/inventory/stock_items/view.html:275
msgid "Total On Hand"
msgstr ""

#: app/templates/inventory/stock_items/view.html:279
msgid "Total Reserved"
msgstr ""

#: app/templates/inventory/stock_items/view.html:283
msgid "Total Available"
msgstr ""

#: app/templates/inventory/stock_items/view.html:289
msgid "Low Stock Alert"
msgstr ""

#: app/templates/inventory/stock_items/view.html:295
msgid "This item is not trackable."
msgstr ""

#: app/templates/inventory/stock_items/view.html:302
msgid "Active Reservations"
msgstr ""

#: app/templates/inventory/stock_levels/item.html:25
#: app/templates/inventory/stock_levels/item.html:40
#: app/templates/inventory/stock_levels/warehouse.html:49
#: app/templates/inventory/stock_levels/warehouse.html:66
msgid "Quantity Reserved"
msgstr ""

#: app/templates/inventory/stock_levels/item.html:28
#: app/templates/inventory/stock_levels/item.html:45
msgid "Last Counted"
msgstr ""

#: app/templates/inventory/stock_levels/item.html:56
msgid "No stock found for this item in any warehouse."
msgstr ""

#: app/templates/inventory/stock_levels/list.html:77
msgid "No stock levels found."
msgstr ""

#: app/templates/inventory/stock_levels/warehouse.html:32
msgid "Low Stock Only"
msgstr ""

#: app/templates/inventory/stock_levels/warehouse.html:75
msgid "Oversold"
msgstr ""

#: app/templates/inventory/stock_levels/warehouse.html:84
msgid "No stock items found in this warehouse."
msgstr ""

#: app/templates/inventory/suppliers/form.html:23
msgid "Supplier Code"
msgstr ""

#: app/templates/inventory/suppliers/form.html:25
msgid "Unique code for this supplier (e.g., SUP-001)"
msgstr ""

#: app/templates/inventory/suppliers/form.html:60
#: app/templates/inventory/suppliers/view.html:89
#: app/templates/quotes/create.html:177 app/templates/quotes/create.html:180
#: app/templates/quotes/edit.html:276 app/templates/quotes/edit.html:279
#: app/templates/quotes/pdf_default.html:85 app/templates/quotes/view.html:89
msgid "Payment Terms"
msgstr ""

#: app/templates/inventory/suppliers/form.html:61
msgid "e.g., Net 30, Net 60"
msgstr ""

#: app/templates/inventory/suppliers/list.html:22
msgid "Code, name, email"
msgstr ""

#: app/templates/inventory/suppliers/list.html:95
msgid "No suppliers found."
msgstr ""

#: app/templates/inventory/suppliers/view.html:23
msgid "Supplier Details"
msgstr ""

#: app/templates/inventory/suppliers/view.html:109
msgid "Stock Items from this Supplier"
msgstr ""

#: app/templates/inventory/suppliers/view.html:118
#: app/templates/inventory/suppliers/view.html:139
msgid "Lead Time"
msgstr ""

#: app/templates/inventory/suppliers/view.html:163
msgid "No stock items associated with this supplier."
msgstr ""

#: app/templates/inventory/suppliers/view.html:178
msgid "Preferred Items"
msgstr ""

#: app/templates/inventory/transfers/form.html:32
#: app/templates/inventory/transfers/list.html:40
#: app/templates/inventory/transfers/list.html:59
#: app/templates/kiosk/dashboard.html:229
msgid "From Warehouse"
msgstr ""

#: app/templates/inventory/transfers/form.html:34
msgid "Select Source Warehouse"
msgstr ""

#: app/templates/inventory/transfers/form.html:41
#: app/templates/inventory/transfers/list.html:41
#: app/templates/inventory/transfers/list.html:64
#: app/templates/kiosk/dashboard.html:246
msgid "To Warehouse"
msgstr ""

#: app/templates/inventory/transfers/form.html:43
msgid "Select Destination Warehouse"
msgstr ""

#: app/templates/inventory/transfers/form.html:55
msgid "Optional notes about this transfer"
msgstr ""

#: app/templates/inventory/transfers/form.html:63
msgid "Create Transfer"
msgstr ""

#: app/templates/inventory/transfers/list.html:77
msgid "No transfers found."
msgstr ""

#: app/templates/inventory/warehouses/form.html:23
msgid "Warehouse Code"
msgstr ""

#: app/templates/inventory/warehouses/form.html:25
msgid "Unique code for this warehouse (e.g., WH-001)"
msgstr ""

#: app/templates/inventory/warehouses/form.html:40
#: app/templates/inventory/warehouses/list.html:25
#: app/templates/inventory/warehouses/list.html:40
#: app/templates/inventory/warehouses/view.html:53
msgid "Contact Email"
msgstr ""

#: app/templates/inventory/warehouses/form.html:44
#: app/templates/inventory/warehouses/view.html:61
msgid "Contact Phone"
msgstr ""

#: app/templates/inventory/warehouses/list.html:68
msgid "No warehouses found."
msgstr ""

#: app/templates/inventory/warehouses/view.html:23
msgid "Warehouse Details"
msgstr ""

#: app/templates/inventory/warehouses/view.html:118
msgid "No stock items in this warehouse."
msgstr ""

#: app/templates/inventory/warehouses/view.html:172
msgid "Total Quantity"
msgstr ""

#: app/templates/invoice_approvals/list.html:51
msgid "Current Approver"
msgstr ""

#: app/templates/invoice_approvals/list.html:54
msgid "You"
msgstr ""

#: app/templates/invoice_approvals/list.html:67
msgid "No Pending Approvals"
msgstr ""

#: app/templates/invoice_approvals/list.html:68
msgid "You have no invoices awaiting your approval."
msgstr ""

#: app/templates/invoice_approvals/list.html:77
msgid "Reject Invoice Approval"
msgstr ""

#: app/templates/invoice_approvals/list.html:81
msgid "Reason for Rejection"
msgstr ""

#: app/templates/invoice_approvals/list.html:82
msgid "Please provide a reason for rejecting this invoice..."
msgstr ""

#: app/templates/invoice_approvals/request.html:3
#: app/templates/invoice_approvals/request.html:8
msgid "Request Invoice Approval"
msgstr ""

#: app/templates/invoice_approvals/request.html:11
msgid "Back to Invoice"
msgstr ""

#: app/templates/invoice_approvals/request.html:19
msgid "Select Approvers"
msgstr ""

#: app/templates/invoice_approvals/request.html:20
msgid "Select one or more users who need to approve this invoice. Approvals will be processed in order."
msgstr ""

#: app/templates/invoice_approvals/request.html:39
#: app/templates/invoices/view.html:140 app/templates/quotes/view.html:202
msgid "Request Approval"
msgstr ""

#: app/templates/invoice_approvals/view.html:19
#: app/templates/invoices/view.html:107 app/templates/quotes/view.html:196
msgid "Approval Status"
msgstr ""

#: app/templates/invoice_approvals/view.html:31
msgid "Requested By"
msgstr ""

#: app/templates/invoice_approvals/view.html:36
msgid "Requested At"
msgstr ""

#: app/templates/invoice_approvals/view.html:42
msgid "Approved By"
msgstr ""

#: app/templates/invoice_approvals/view.html:49
msgid "Rejected By"
msgstr ""

#: app/templates/invoice_approvals/view.html:54
#: app/templates/quotes/view.html:564
msgid "Rejection Reason"
msgstr ""

#: app/templates/invoice_approvals/view.html:64
msgid "Approval Stages"
msgstr ""

#: app/templates/invoice_approvals/view.html:100
#: app/templates/invoices/edit.html:376 app/templates/main/help.html:536
#: app/templates/reports/index.html:166 app/templates/tasks/edit.html:275
msgid "Quick Actions"
msgstr ""

#: app/templates/invoice_approvals/view.html:116
msgid "Waiting for approval from another user."
msgstr ""

#: app/templates/invoices/_invoices_list.html:9
#: app/templates/payments/list.html:96
#: app/templates/reports/export_form.html:196
#: app/templates/reports/export_form.html:329
#: app/templates/reports/summary.html:12
#: app/templates/reports/task_report.html:55
#: app/templates/reports/time_entries_report.html:89
#: app/templates/reports/user_report.html:56
msgid "Export to Excel"
msgstr ""

#: app/templates/invoices/_invoices_list.html:83 app/utils/i18n_helpers.py:89
#: app/utils/i18n_helpers.py:100
msgid "Partially Paid"
msgstr ""

#: app/templates/invoices/_invoices_list.html:87 app/utils/i18n_helpers.py:90
#: app/utils/i18n_helpers.py:101
msgid "Fully Paid"
msgstr ""

#: app/templates/invoices/create.html:8 app/templates/invoices/create.html:60
#: app/templates/main/help.html:448
msgid "Create Invoice"
msgstr ""

#: app/templates/invoices/create.html:8
msgid "Generate a new invoice for a project and client"
msgstr ""

#: app/templates/invoices/create.html:19 app/templates/issues/view.html:68
#: app/templates/recurring_tasks/form.html:37
#: app/templates/tasks/create.html:48 app/templates/tasks/edit.html:56
msgid "Select a project"
msgstr ""

#: app/templates/invoices/create.html:24
msgid "Selecting a project will auto-fill client details"
msgstr ""

#: app/templates/invoices/create.html:43 app/templates/invoices/edit.html:42
msgid "Buyer reference (PEPPOL BT-10)"
msgstr ""

#: app/templates/invoices/create.html:44 app/templates/invoices/edit.html:43
msgid "Optional; used in PEPPOL UBL"
msgstr ""

#: app/templates/invoices/create.html:47 app/templates/invoices/edit.html:34
#: app/templates/quotes/create.html:156 app/templates/quotes/edit.html:255
msgid "Tax Rate (%)"
msgstr ""

#: app/templates/invoices/create.html:67
#: app/templates/invoices/generate_from_time.html:173
msgid "Tips"
msgstr ""

#: app/templates/invoices/create.html:69
msgid "Choose the correct project to auto-fill client details."
msgstr ""

#: app/templates/invoices/create.html:70
msgid "You can customize notes and terms before sending the invoice."
msgstr ""

#: app/templates/invoices/edit.html:13
msgid "Edit Invoice"
msgstr ""

#: app/templates/invoices/edit.html:13
msgid "Update invoice details, items, and terms"
msgstr ""

#: app/templates/invoices/edit.html:63
msgid "Time-based services and hourly work"
msgstr ""

#: app/templates/invoices/edit.html:72
msgid "Project / Stock Item"
msgstr ""

#: app/templates/invoices/edit.html:73
msgid "Task / Warehouse"
msgstr ""

#: app/templates/invoices/edit.html:92
msgid "Project hours"
msgstr ""

#: app/templates/invoices/edit.html:97 app/templates/quotes/edit.html:92
msgid "Select Stock Item"
msgstr ""

#: app/templates/invoices/edit.html:114 app/templates/invoices/edit.html:538
msgid "e.g., Web Development Services"
msgstr ""

#: app/templates/invoices/edit.html:118
msgid "Quantity is from logged hours and cannot be edited"
msgstr ""

#: app/templates/invoices/edit.html:127 app/templates/invoices/edit.html:547
#: app/templates/quotes/_edit_quote_form_scripts.html:178
#: app/templates/quotes/edit.html:113
msgid "Remove item"
msgstr ""

#: app/templates/invoices/edit.html:137
msgid "Items Subtotal"
msgstr ""

#: app/templates/invoices/edit.html:151
msgid "Billable expenses such as travel, meals, and materials"
msgstr ""

#: app/templates/invoices/edit.html:154
msgid "Add Expense"
msgstr ""

#: app/templates/invoices/edit.html:173
msgid "e.g., Travel to Client Meeting"
msgstr ""

#: app/templates/invoices/edit.html:173
msgid "Linked expense - title cannot be edited"
msgstr ""

#: app/templates/invoices/edit.html:176
msgid "Linked expense - description cannot be edited"
msgstr ""

#: app/templates/invoices/edit.html:179
msgid "Linked expense - category cannot be edited"
msgstr ""

#: app/templates/invoices/edit.html:180 app/templates/projects/add_cost.html:40
#: app/templates/projects/edit_cost.html:47
#: app/templates/quotes/_edit_quote_form_scripts.html:185
#: app/templates/quotes/edit.html:161 app/utils/i18n_helpers.py:164
#: app/utils/i18n_helpers.py:181
msgid "Travel"
msgstr ""

#: app/templates/invoices/edit.html:181
#: app/templates/quotes/_edit_quote_form_scripts.html:186
#: app/templates/quotes/edit.html:162 app/utils/i18n_helpers.py:165
#: app/utils/i18n_helpers.py:182
msgid "Meals"
msgstr ""

#: app/templates/invoices/edit.html:182 app/utils/i18n_helpers.py:166
#: app/utils/i18n_helpers.py:183
msgid "Accommodation"
msgstr ""

#: app/templates/invoices/edit.html:183
#: app/templates/quotes/_edit_quote_form_scripts.html:187
#: app/templates/quotes/edit.html:163 app/utils/i18n_helpers.py:167
#: app/utils/i18n_helpers.py:184
msgid "Supplies"
msgstr ""

#: app/templates/invoices/edit.html:184 app/utils/i18n_helpers.py:168
#: app/utils/i18n_helpers.py:185
msgid "Software"
msgstr ""

#: app/templates/invoices/edit.html:185 app/templates/projects/add_cost.html:43
#: app/templates/projects/edit_cost.html:50
#: app/templates/quotes/_edit_quote_form_scripts.html:189
#: app/templates/quotes/edit.html:165 app/utils/i18n_helpers.py:169
#: app/utils/i18n_helpers.py:186
msgid "Equipment"
msgstr ""

#: app/templates/invoices/edit.html:186 app/templates/projects/add_cost.html:42
#: app/templates/projects/edit_cost.html:49
#: app/templates/quotes/_edit_quote_form_scripts.html:188
#: app/templates/quotes/edit.html:164 app/utils/i18n_helpers.py:170
#: app/utils/i18n_helpers.py:187
msgid "Services"
msgstr ""

#: app/templates/invoices/edit.html:187 app/utils/i18n_helpers.py:171
#: app/utils/i18n_helpers.py:188
msgid "Marketing"
msgstr ""

#: app/templates/invoices/edit.html:188 app/utils/i18n_helpers.py:172
#: app/utils/i18n_helpers.py:189
msgid "Training"
msgstr ""

#: app/templates/invoices/edit.html:189 app/templates/invoices/edit.html:256
#: app/templates/invoices/edit.html:616 app/templates/kiosk/dashboard.html:203
#: app/templates/projects/add_cost.html:45
#: app/templates/projects/add_good.html:35
#: app/templates/projects/edit_cost.html:52
#: app/templates/projects/edit_good.html:35
#: app/templates/quotes/_edit_quote_form_scripts.html:190
#: app/templates/quotes/_edit_quote_form_scripts.html:224
#: app/templates/quotes/edit.html:166 app/templates/quotes/edit.html:223
#: app/utils/i18n_helpers.py:118 app/utils/i18n_helpers.py:134
#: app/utils/i18n_helpers.py:173 app/utils/i18n_helpers.py:190
msgid "Other"
msgstr ""

#: app/templates/invoices/edit.html:193
msgid "Linked expense - amount cannot be edited"
msgstr ""

#: app/templates/invoices/edit.html:196
msgid "Linked expense - date cannot be edited"
msgstr ""

#: app/templates/invoices/edit.html:199
msgid "Unlink expense from invoice"
msgstr ""

#: app/templates/invoices/edit.html:209
msgid "Expenses Subtotal"
msgstr ""

#: app/templates/invoices/edit.html:220 app/templates/invoices/view.html:203
#: app/templates/projects/goods.html:6
msgid "Extra Goods"
msgstr ""

#: app/templates/invoices/edit.html:223
msgid "Products, materials, licenses, and other goods"
msgstr ""

#: app/templates/invoices/edit.html:226 app/templates/projects/add_good.html:69
#: app/templates/projects/goods.html:11
msgid "Add Good"
msgstr ""

#: app/templates/invoices/edit.html:236 app/templates/invoices/edit.html:263
#: app/templates/invoices/edit.html:623 app/templates/quotes/create.html:67
#: app/templates/quotes/create.html:129 app/templates/quotes/edit.html:72
#: app/templates/quotes/edit.html:110 app/templates/quotes/edit.html:203
msgid "Price"
msgstr ""

#: app/templates/invoices/edit.html:245 app/templates/invoices/edit.html:605
msgid "e.g., Software License"
msgstr ""

#: app/templates/invoices/edit.html:252 app/templates/invoices/edit.html:612
#: app/templates/projects/add_good.html:31
#: app/templates/projects/edit_good.html:31
#: app/templates/quotes/_edit_quote_form_scripts.html:220
#: app/templates/quotes/edit.html:219
msgid "Product"
msgstr ""

#: app/templates/invoices/edit.html:253 app/templates/invoices/edit.html:613
#: app/templates/projects/add_good.html:32
#: app/templates/projects/edit_good.html:32
#: app/templates/quotes/_edit_quote_form_scripts.html:221
#: app/templates/quotes/edit.html:220
msgid "Service"
msgstr ""

#: app/templates/invoices/edit.html:254 app/templates/invoices/edit.html:614
#: app/templates/projects/add_good.html:33
#: app/templates/projects/edit_good.html:33
#: app/templates/quotes/_edit_quote_form_scripts.html:222
#: app/templates/quotes/edit.html:221
msgid "Material"
msgstr ""

#: app/templates/invoices/edit.html:269 app/templates/invoices/edit.html:629
msgid "Remove good"
msgstr ""

#: app/templates/invoices/edit.html:279
msgid "Goods Subtotal"
msgstr ""

#: app/templates/invoices/edit.html:297
msgid "Live Preview"
msgstr ""

#: app/templates/invoices/edit.html:317
msgid "Payment"
msgstr ""

#: app/templates/invoices/edit.html:342
msgid "Goods"
msgstr ""

#: app/templates/invoices/edit.html:378
msgid "Generate from Time/Costs"
msgstr ""

#: app/templates/invoices/edit.html:379 app/templates/invoices/view.html:40
msgid "Record Payment"
msgstr ""

#: app/templates/invoices/edit.html:380 app/templates/invoices/view.html:17
#: app/templates/mileage/list.html:66 app/templates/per_diem/list.html:54
#: app/templates/quotes/view.html:37 app/templates/reports/summary.html:9
#: app/templates/timer/time_entries_overview.html:54
#: app/templates/timer/time_entries_overview.html:56
msgid "Export PDF"
msgstr ""

#: app/templates/invoices/edit.html:381 app/templates/mileage/list.html:63
#: app/templates/per_diem/list.html:51
#: app/templates/timer/time_entries_overview.html:45
#: app/templates/timer/time_entries_overview.html:47
msgid "Export CSV"
msgstr ""

#: app/templates/invoices/edit.html:382
msgid "Duplicate Invoice"
msgstr ""

#: app/templates/invoices/edit.html:666
msgid "Are you sure you want to unlink this expense from the invoice?"
msgstr ""

#: app/templates/invoices/edit.html:668
msgid "Unlink Expense"
msgstr ""

#: app/templates/invoices/edit.html:669
msgid "Unlink"
msgstr ""

#: app/templates/invoices/edit.html:720
msgid "Please add at least one item, expense, or extra good to the invoice"
msgstr ""

#: app/templates/invoices/generate_from_time.html:6
msgid "Generate from Time, Costs & Goods"
msgstr ""

#: app/templates/invoices/generate_from_time.html:7
msgid "Select unbilled time entries, project costs, and extra goods to add to this invoice"
msgstr ""

#: app/templates/invoices/generate_from_time.html:9
msgid "Back to Edit"
msgstr ""

#: app/templates/invoices/generate_from_time.html:19
msgid "Unbilled Time Entries"
msgstr ""

#: app/templates/invoices/generate_from_time.html:31
#: app/templates/projects/dashboard.html:290
#: app/templates/projects/time_entries_overview.html:61
#: app/templates/reports/iterative_view.html:32
#: app/templates/reports/time_entries_report.html:85
msgid "entries"
msgstr ""

#: app/templates/invoices/generate_from_time.html:67
msgid "No unbilled time entries found for this project."
msgstr ""

#: app/templates/invoices/generate_from_time.html:72
msgid "Uninvoiced Project Costs"
msgstr ""

#: app/templates/invoices/generate_from_time.html:86
msgid "No uninvoiced costs found for this project."
msgstr ""

#: app/templates/invoices/generate_from_time.html:91
msgid "Uninvoiced Billable Expenses"
msgstr ""

#: app/templates/invoices/generate_from_time.html:101
#: app/templates/invoices/pdf_default.html:120
#: app/utils/pdf_generator_fallback.py:289
msgid "Vendor"
msgstr ""

#: app/templates/invoices/generate_from_time.html:109
msgid "No uninvoiced billable expenses found for this project."
msgstr ""

#: app/templates/invoices/generate_from_time.html:114
msgid "Project Extra Goods"
msgstr ""

#: app/templates/invoices/generate_from_time.html:131
msgid "No extra goods found for this project."
msgstr ""

#: app/templates/invoices/generate_from_time.html:137
msgid "Add Selected to Invoice"
msgstr ""

#: app/templates/invoices/generate_from_time.html:145
msgid "Selection Summary"
msgstr ""

#: app/templates/invoices/generate_from_time.html:146
msgid "Total available hours"
msgstr ""

#: app/templates/invoices/generate_from_time.html:147
msgid "Total available costs"
msgstr ""

#: app/templates/invoices/generate_from_time.html:148
msgid "Total available expenses"
msgstr ""

#: app/templates/invoices/generate_from_time.html:149
msgid "Total available goods"
msgstr ""

#: app/templates/invoices/generate_from_time.html:152
msgid "Prepaid Hours Overview"
msgstr ""

#: app/templates/invoices/generate_from_time.html:154
#, python-format
msgid "Plan includes %(hours)s hours per cycle (resets on day %(day)s)."
msgstr ""

#: app/templates/invoices/generate_from_time.html:161
#, python-format
msgid "Consumed: %(consumed)s h • Remaining: %(remaining)s h"
msgstr ""

#: app/templates/invoices/generate_from_time.html:166
msgid "No prepaid usage recorded for selected period yet."
msgstr ""

#: app/templates/invoices/generate_from_time.html:175
msgid "You can select multiple time entries, costs, expenses, and extra goods."
msgstr ""

#: app/templates/invoices/generate_from_time.html:176
msgid "Time entries are grouped by task or project at item creation."
msgstr ""

#: app/templates/invoices/generate_from_time.html:177
msgid "Costs and extra goods are added as individual invoice items."
msgstr ""

#: app/templates/invoices/generate_from_time.html:178
msgid "Expenses are linked to the invoice and appear in a separate section."
msgstr ""

#: app/templates/invoices/generate_from_time.html:194
msgid "Please select at least one time entry, cost, expense, or extra good"
msgstr ""

#: app/templates/invoices/list.html:32
msgid "Filter Invoices"
msgstr ""

#: app/templates/invoices/list.html:72
msgid "Invoice number or client"
msgstr ""

#: app/templates/invoices/list.html:105
msgid "Delete Selected Invoices"
msgstr ""

#: app/templates/invoices/list.html:125
msgid "Change Status for Selected Invoices"
msgstr ""

#: app/templates/invoices/list.html:126 app/templates/invoices/list.html:128
msgid "Select Status"
msgstr ""

#: app/templates/invoices/list.html:135
#: app/templates/timer/time_entries_overview.html:202
#: app/templates/timer/view_timer.html:151
msgid "Invoice Reference"
msgstr ""

#: app/templates/invoices/list.html:136
msgid "e.g., Payment confirmation number"
msgstr ""

#: app/templates/invoices/list.html:153 app/templates/invoices/list.html:176
#: app/templates/invoices/view.html:365 app/templates/invoices/view.html:388
msgid "Delete Invoice"
msgstr ""

#: app/templates/invoices/list.html:161 app/templates/invoices/view.html:373
#: app/templates/kanban/columns.html:149
msgid "Warning:"
msgstr ""

#: app/templates/invoices/list.html:164 app/templates/invoices/view.html:376
msgid "Are you sure you want to delete invoice"
msgstr ""

#: app/templates/invoices/list.html:166 app/templates/invoices/view.html:378
msgid "All invoice items, extra goods, and payment records associated with this invoice will be permanently deleted."
msgstr ""

#: app/templates/invoices/pdf_default.html:54 app/utils/pdf_generator.py:1124
#: app/utils/pdf_generator_fallback.py:167
msgid "INVOICE"
msgstr ""

#: app/templates/invoices/pdf_default.html:56 app/utils/pdf_generator.py:1126
msgid "Invoice #"
msgstr ""

#: app/templates/invoices/pdf_default.html:66 app/utils/pdf_generator.py:1137
msgid "Bill To"
msgstr ""

#: app/templates/invoices/pdf_default.html:89 app/utils/pdf_generator.py:1155
#: app/utils/pdf_generator_fallback.py:240
msgid "Quantity (Hours)"
msgstr ""

#: app/templates/invoices/pdf_default.html:101
#, python-format
msgid "Generated from %(num)d time entries"
msgstr ""

#: app/templates/invoices/pdf_default.html:117
#: app/utils/pdf_generator_fallback.py:287
msgid "Expense"
msgstr ""

#: app/templates/invoices/pdf_default.html:153
#: app/templates/quotes/pdf_default.html:117
#: app/utils/pdf_generator_fallback.py:305
#: app/utils/pdf_generator_fallback.py:616
msgid "Subtotal:"
msgstr ""

#: app/templates/invoices/pdf_default.html:158
#: app/templates/quotes/pdf_default.html:140
#: app/utils/pdf_generator_fallback.py:312
#, python-format
msgid "Tax (%(rate).2f%%):"
msgstr ""

#: app/templates/invoices/pdf_default.html:163
#: app/templates/quotes/pdf_default.html:145
#: app/utils/pdf_generator_fallback.py:317
msgid "Total Amount:"
msgstr ""

#: app/templates/invoices/pdf_default.html:174 app/utils/pdf_generator.py:1347
#: app/utils/pdf_generator_fallback.py:377
msgid "Notes:"
msgstr ""

#: app/templates/invoices/pdf_default.html:180 app/utils/pdf_generator.py:1357
#: app/utils/pdf_generator_fallback.py:382
msgid "Terms:"
msgstr ""

#: app/templates/invoices/pdf_default.html:189
#: app/templates/quotes/pdf_default.html:171 app/utils/pdf_generator.py:1378
#: app/utils/pdf_generator_fallback.py:394
msgid "Payment Information:"
msgstr ""

#: app/templates/invoices/pdf_default.html:192
#: app/templates/quotes/pdf_default.html:162
#: app/templates/quotes/pdf_default.html:175 app/utils/pdf_generator.py:1175
#: app/utils/pdf_generator_fallback.py:399
#: app/utils/pdf_generator_fallback.py:652
msgid "Terms & Conditions:"
msgstr ""

#: app/templates/invoices/view.html:32
msgid "Download UBL"
msgstr ""

#: app/templates/invoices/view.html:37
msgid "Pay Online"
msgstr ""

#: app/templates/invoices/view.html:77
msgid "Payment Reference"
msgstr ""

#: app/templates/invoices/view.html:122
msgid "PEPPOL compliance: the following are missing"
msgstr ""

#: app/templates/invoices/view.html:135
msgid "Invoice Approval"
msgstr ""

#: app/templates/invoices/view.html:136
msgid "Request approval before sending this invoice to the client."
msgstr ""

#: app/templates/invoices/view.html:260 app/templates/invoices/view.html:349
msgid "Payment History"
msgstr ""

#: app/templates/invoices/view.html:497
msgid "Send Invoice via Email"
msgstr ""

#: app/templates/issues/edit.html:13 app/templates/issues/view.html:12
msgid "Edit Issue"
msgstr ""

#: app/templates/issues/edit.html:72 app/templates/issues/new.html:66
#: app/templates/issues/view.html:74 app/templates/issues/view.html:143
#: app/templates/recurring_tasks/form.html:108
#: app/templates/tasks/create.html:108 app/templates/tasks/edit.html:116
#: app/templates/tasks/overdue.html:54
msgid "Unassigned"
msgstr ""

#: app/templates/issues/list.html:15 app/templates/issues/list.html:166
#: app/templates/issues/new.html:77
msgid "Create Issue"
msgstr ""

#: app/templates/issues/list.html:28
msgid "Filter Issues"
msgstr ""

#: app/templates/issues/list.html:33
msgid "Search by title or description"
msgstr ""

#: app/templates/issues/list.html:80 app/templates/tasks/my_tasks.html:178
msgid "Apply Filters"
msgstr ""

#: app/templates/issues/list.html:155 app/templates/main/search.html:101
#: app/templates/project_templates/list.html:104
#: app/templates/reports/time_entries_report.html:144
#: app/utils/pdf_generator_fallback.py:665
msgid "Page"
msgstr ""

#: app/templates/issues/list.html:155 app/templates/main/search.html:101
#: app/templates/project_templates/list.html:104
#: app/templates/projects/dashboard.html:57
#: app/templates/reports/time_entries_report.html:144
msgid "of"
msgstr ""

#: app/templates/issues/list.html:169
msgid "No issues found"
msgstr ""

#: app/templates/issues/list.html:170
msgid "No issues match your filters. Create an issue or adjust your filters."
msgstr ""

#: app/templates/issues/new.html:13
msgid "Create New Issue"
msgstr ""

#: app/templates/issues/view.html:16
msgid "Are you sure you want to delete this issue?"
msgstr ""

#: app/templates/issues/view.html:16
msgid "Delete Issue"
msgstr ""

#: app/templates/issues/view.html:38 app/templates/main/help.html:30
#: app/templates/main/help.html:279
msgid "Task Management"
msgstr ""

#: app/templates/issues/view.html:49
msgid "Link to existing task"
msgstr ""

#: app/templates/issues/view.html:53
msgid "Select a task"
msgstr ""

#: app/templates/issues/view.html:59
msgid "Link"
msgstr ""

#: app/templates/issues/view.html:64
msgid "Create new task from this issue"
msgstr ""

#: app/templates/issues/view.html:154
msgid "Submitted By"
msgstr ""

#: app/templates/kanban/board.html:5
msgid "Kanban"
msgstr ""

#: app/templates/kanban/board.html:47 app/templates/tasks/_kanban.html:14
msgid "Manage Columns"
msgstr ""

#: app/templates/kanban/board.html:56
msgid "Drag tasks between columns to update their status"
msgstr ""

#: app/templates/kanban/board.html:61
msgid "Kanban board"
msgstr ""

#: app/templates/kanban/board.html:113
msgid "moved to"
msgstr ""

#: app/templates/kanban/board.html:147
#: app/templates/projects/_kanban_tailwind.html:86
msgid "No tasks in this column."
msgstr ""

#: app/templates/kanban/columns.html:2 app/templates/kanban/columns.html:18
msgid "Manage Kanban Columns"
msgstr ""

#: app/templates/kanban/columns.html:20
msgid "Customize your kanban board columns and task states"
msgstr ""

#: app/templates/kanban/columns.html:25 app/templates/timer/edit_timer.html:407
msgid "Project:"
msgstr ""

#: app/templates/kanban/columns.html:27
msgid "Global Columns"
msgstr ""

#: app/templates/kanban/columns.html:35
msgid "Add Column"
msgstr ""

#: app/templates/kanban/columns.html:44
msgid "Kanban columns list"
msgstr ""

#: app/templates/kanban/columns.html:48
msgid "Key"
msgstr ""

#: app/templates/kanban/columns.html:53
msgid "Complete?"
msgstr ""

#: app/templates/kanban/columns.html:62
msgid "Drag to reorder"
msgstr ""

#: app/templates/kanban/columns.html:93
msgid "Edit column"
msgstr ""

#: app/templates/kanban/columns.html:96
msgid "Toggle active state"
msgstr ""

#: app/templates/kanban/columns.html:118
msgid "No kanban columns found. Create your first column to get started."
msgstr ""

#: app/templates/kanban/columns.html:124
msgid "Tips:"
msgstr ""

#: app/templates/kanban/columns.html:126
msgid "Drag and drop rows to reorder columns"
msgstr ""

#: app/templates/kanban/columns.html:127
msgid "System columns (todo, in_progress, done) cannot be deleted but can be customized"
msgstr ""

#: app/templates/kanban/columns.html:128
msgid "Columns marked as \"Complete\" will mark tasks as completed when dragged to that column"
msgstr ""

#: app/templates/kanban/columns.html:129
msgid "Inactive columns are hidden from the kanban board but tasks with that status remain accessible"
msgstr ""

#: app/templates/kanban/columns.html:141
msgid "Delete Kanban Column"
msgstr ""

#: app/templates/kanban/columns.html:152
msgid "Are you sure you want to delete the column?"
msgstr ""

#: app/templates/kanban/columns.html:154
msgid "Key:"
msgstr ""

#: app/templates/kanban/columns.html:157
msgid "Note: Tasks with this status will remain accessible but the column will no longer appear on the kanban board."
msgstr ""

#: app/templates/kanban/columns.html:167
msgid "Delete Column"
msgstr ""

#: app/templates/kanban/columns.html:226 app/templates/kanban/columns.html:228
msgid "Columns reordered successfully"
msgstr ""

#: app/templates/kanban/columns.html:247
msgid "Failed to reorder columns. Please try again."
msgstr ""

#: app/templates/kanban/create_column.html:2
#: app/templates/kanban/create_column.html:10
msgid "Create Kanban Column"
msgstr ""

#: app/templates/kanban/create_column.html:12
msgid "Add a new column to your kanban board"
msgstr ""

#: app/templates/kanban/create_column.html:23
msgid "Create Kanban Column form"
msgstr ""

#: app/templates/kanban/create_column.html:26
#: app/templates/kanban/edit_column.html:34
msgid "Column Label"
msgstr ""

#: app/templates/kanban/create_column.html:27
msgid "e.g., In Review, Blocked, Testing"
msgstr ""

#: app/templates/kanban/create_column.html:28
#: app/templates/kanban/edit_column.html:36
msgid "The display name shown on the kanban board"
msgstr ""

#: app/templates/kanban/create_column.html:32
#: app/templates/kanban/edit_column.html:23
msgid "Column Key"
msgstr ""

#: app/templates/kanban/create_column.html:33
msgid "e.g., in_review, blocked, testing"
msgstr ""

#: app/templates/kanban/create_column.html:34
msgid "Unique identifier (lowercase, no spaces, use underscores). Auto-generated from label if empty."
msgstr ""

#: app/templates/kanban/create_column.html:41
msgid "Global (for all projects)"
msgstr ""

#: app/templates/kanban/create_column.html:46
msgid "Select a project to create project-specific columns, or leave as Global for all projects"
msgstr ""

#: app/templates/kanban/create_column.html:52
#: app/templates/kanban/edit_column.html:41
msgid "Icon Class"
msgstr ""

#: app/templates/kanban/create_column.html:55
#: app/templates/kanban/edit_column.html:44
msgid "Font Awesome icon class"
msgstr ""

#: app/templates/kanban/create_column.html:56
#: app/templates/kanban/edit_column.html:45
msgid "Browse icons"
msgstr ""

#: app/templates/kanban/create_column.html:62
#: app/templates/kanban/edit_column.html:54
msgid "Primary (Blue)"
msgstr ""

#: app/templates/kanban/create_column.html:63
#: app/templates/kanban/edit_column.html:55
msgid "Secondary (Gray)"
msgstr ""

#: app/templates/kanban/create_column.html:64
#: app/templates/kanban/edit_column.html:56
msgid "Success (Green)"
msgstr ""

#: app/templates/kanban/create_column.html:65
#: app/templates/kanban/edit_column.html:57
msgid "Danger (Red)"
msgstr ""

#: app/templates/kanban/create_column.html:66
#: app/templates/kanban/edit_column.html:58
msgid "Warning (Yellow)"
msgstr ""

#: app/templates/kanban/create_column.html:67
#: app/templates/kanban/edit_column.html:59
msgid "Info (Cyan)"
msgstr ""

#: app/templates/kanban/create_column.html:70
#: app/templates/kanban/edit_column.html:62
msgid "Bootstrap color class for styling"
msgstr ""

#: app/templates/kanban/create_column.html:78
#: app/templates/kanban/edit_column.html:70
msgid "Mark as Complete State"
msgstr ""

#: app/templates/kanban/create_column.html:79
#: app/templates/kanban/edit_column.html:71
msgid "Tasks moved to this column will be marked as completed"
msgstr ""

#: app/templates/kanban/create_column.html:89
msgid "Create Column"
msgstr ""

#: app/templates/kanban/create_column.html:97
msgid "Note:"
msgstr ""

#: app/templates/kanban/create_column.html:97
msgid "The column will be added at the end of the board. You can reorder columns later from the management page."
msgstr ""

#: app/templates/kanban/edit_column.html:2
#: app/templates/kanban/edit_column.html:10
msgid "Edit Kanban Column"
msgstr ""

#: app/templates/kanban/edit_column.html:12
msgid "Modify column settings"
msgstr ""

#: app/templates/kanban/edit_column.html:20
msgid "Edit Kanban Column form"
msgstr ""

#: app/templates/kanban/edit_column.html:25
msgid "The key cannot be changed after creation"
msgstr ""

#: app/templates/kanban/edit_column.html:27
msgid "This is a project-specific column"
msgstr ""

#: app/templates/kanban/edit_column.html:29
msgid "This is a global column (for all projects)"
msgstr ""

#: app/templates/kanban/edit_column.html:48
#: app/templates/reports/builder.html:66 app/templates/tasks/create.html:80
#: app/templates/tasks/edit.html:89 app/templates/timer/bulk_entry.html:154
msgid "Preview"
msgstr ""

#: app/templates/kanban/edit_column.html:81
msgid "Inactive columns are hidden from the kanban board"
msgstr ""

#: app/templates/kanban/edit_column.html:100
msgid "System Column:"
msgstr ""

#: app/templates/kanban/edit_column.html:100
msgid "This is a system column. You can customize its appearance but cannot delete it."
msgstr ""

#: app/templates/kiosk/base.html:112
msgid "Keyboard Shortcuts (Press ?)"
msgstr ""

#: app/templates/kiosk/base.html:112
msgid "Show keyboard shortcuts"
msgstr ""

#: app/templates/kiosk/base.html:116 app/templates/kiosk/login.html:72
msgid "Toggle dark mode"
msgstr ""

#: app/templates/kiosk/base.html:127
msgid "Logout from kiosk mode"
msgstr ""

#: app/templates/kiosk/base.html:143
msgid "Scan"
msgstr ""

#: app/templates/kiosk/base.html:147
msgid "Adjust Stock"
msgstr ""

#: app/templates/kiosk/dashboard.html:10
msgid "Close keyboard shortcuts"
msgstr ""

#: app/templates/kiosk/dashboard.html:43
msgid "Scan Barcode or Enter SKU"
msgstr ""

#: app/templates/kiosk/dashboard.html:45
msgid "Use a barcode scanner or type the SKU manually"
msgstr ""

#: app/templates/kiosk/dashboard.html:55
msgid "Scan barcode or enter SKU..."
msgstr ""

#: app/templates/kiosk/dashboard.html:58
msgid "Barcode or SKU input"
msgstr ""

#: app/templates/kiosk/dashboard.html:64
msgid "Use Camera to Scan"
msgstr ""

#: app/templates/kiosk/dashboard.html:65
msgid "Open camera scanner"
msgstr ""

#: app/templates/kiosk/dashboard.html:91
msgid "Close camera scanner"
msgstr ""

#: app/templates/kiosk/dashboard.html:93
msgid "Close Camera"
msgstr ""

#: app/templates/kiosk/dashboard.html:174
msgid "Decrease quantity"
msgstr ""

#: app/templates/kiosk/dashboard.html:183
msgid "Adjustment quantity"
msgstr ""

#: app/templates/kiosk/dashboard.html:185
msgid "Increase quantity"
msgstr ""

#: app/templates/kiosk/dashboard.html:198
msgid "Kiosk adjustment"
msgstr ""

#: app/templates/kiosk/dashboard.html:199
msgid "Physical count"
msgstr ""

#: app/templates/kiosk/dashboard.html:200
msgid "Found"
msgstr ""

#: app/templates/kiosk/dashboard.html:201
msgid "Damaged"
msgstr ""

#: app/templates/kiosk/dashboard.html:211
msgid "Apply stock adjustment"
msgstr ""

#: app/templates/kiosk/dashboard.html:213
msgid "Apply Adjustment"
msgstr ""

#: app/templates/kiosk/dashboard.html:218
msgid "Undo last adjustment"
msgstr ""

#: app/templates/kiosk/dashboard.html:220
msgid "Undo Last Adjustment"
msgstr ""

#: app/templates/kiosk/dashboard.html:271
msgid "Transfer quantity"
msgstr ""

#: app/templates/kiosk/dashboard.html:275
msgid "Transfer stock"
msgstr ""

#: app/templates/kiosk/dashboard.html:277
msgid "Transfer Stock"
msgstr ""

#: app/templates/kiosk/dashboard.html:295
msgid "Stop timer"
msgstr ""

#: app/templates/kiosk/dashboard.html:297 app/templates/tasks/_kanban.html:51
#: app/templates/tasks/my_tasks.html:336 app/templates/timer/timer_page.html:90
msgid "Stop Timer"
msgstr ""

#: app/templates/kiosk/dashboard.html:309
msgid "Select project..."
msgstr ""

#: app/templates/kiosk/dashboard.html:315
msgid "No projects available"
msgstr ""

#: app/templates/kiosk/dashboard.html:321
msgid "No active projects found. Please create a project first."
msgstr ""

#: app/templates/kiosk/dashboard.html:337
#: app/templates/kiosk/dashboard.html:400 app/templates/main/dashboard.html:684
#: app/templates/main/dashboard.html:752
#: app/templates/timer/bulk_entry.html:333
#: app/templates/timer/calendar.html:160 app/templates/timer/calendar.html:681
#: app/templates/timer/calendar.html:691 app/templates/timer/calendar.html:700
#: app/templates/timer/calendar.html:705
#: app/templates/timer/manual_entry.html:81
#: app/templates/timer/manual_entry.html:347
#: app/templates/timer/timer_page.html:163
#: app/templates/timer/timer_page.html:263
msgid "No task"
msgstr ""

#: app/templates/kiosk/dashboard.html:343
msgid "Tasks will load after selecting a project"
msgstr ""

#: app/templates/kiosk/dashboard.html:348 app/templates/main/dashboard.html:692
#: app/templates/main/dashboard.html:762
msgid "What are you working on?"
msgstr ""

#: app/templates/kiosk/dashboard.html:351
msgid "Start timer"
msgstr ""

#: app/templates/kiosk/dashboard.html:369
msgid "Recent Items"
msgstr ""

#: app/templates/kiosk/login.html:6
msgid "Kiosk Login"
msgstr ""

#: app/templates/kiosk/login.html:40
msgid "Quick access for warehouse operations"
msgstr ""

#: app/templates/kiosk/login.html:46
msgid "Barcode scanning"
msgstr ""

#: app/templates/kiosk/login.html:52
msgid "Stock management"
msgstr ""

#: app/templates/kiosk/login.html:58
msgid "Time tracking"
msgstr ""

#: app/templates/kiosk/login.html:68
msgid "Sign in to Kiosk Mode"
msgstr ""

#: app/templates/kiosk/login.html:69
msgid "Select your username to continue"
msgstr ""

#: app/templates/kiosk/login.html:72
msgid "Toggle Theme"
msgstr ""

#: app/templates/kiosk/login.html:98
msgid "Select User"
msgstr ""

#: app/templates/kiosk/login.html:126
msgid "your-username"
msgstr ""

#: app/templates/kiosk/login.html:159
msgid "Standard Login"
msgstr ""

#: app/templates/leads/convert_to_client.html:4
#: app/templates/leads/convert_to_client.html:10
#: app/templates/leads/convert_to_client.html:15
#: app/templates/leads/convert_to_client.html:32
#: app/templates/leads/view.html:17
msgid "Convert to Client"
msgstr ""

#: app/templates/leads/convert_to_client.html:21
msgid "This will create a new client and primary contact from this lead, then mark the lead as converted."
msgstr ""

#: app/templates/leads/convert_to_client.html:23
msgid "Lead summary"
msgstr ""

#: app/templates/leads/convert_to_deal.html:4
#: app/templates/leads/convert_to_deal.html:10
#: app/templates/leads/convert_to_deal.html:15
#: app/templates/leads/convert_to_deal.html:60 app/templates/leads/view.html:18
msgid "Convert to Deal"
msgstr ""

#: app/templates/leads/form.html:55 app/templates/leads/list.html:35
#: app/templates/leads/list.html:55 app/templates/leads/list.html:83
#: app/templates/leads/view.html:67 app/templates/reports/user_report.html:84
#: app/templates/timer/calendar.html:889
#: app/templates/timer/edit_timer.html:309
#: app/templates/timer/view_timer.html:181
msgid "Source"
msgstr ""

#: app/templates/leads/form.html:56
msgid "Website, referral, ad..."
msgstr ""

#: app/templates/leads/form.html:69
msgid "Lead Score"
msgstr ""

#: app/templates/leads/form.html:74 app/templates/leads/view.html:96
msgid "Estimated Value"
msgstr ""

#: app/templates/leads/form.html:100
msgid "Save Lead"
msgstr ""

#: app/templates/leads/list.html:23
msgid "Name, company, email..."
msgstr ""

#: app/templates/leads/list.html:28 app/templates/tasks/my_tasks.html:130
msgid "All Statuses"
msgstr ""

#: app/templates/leads/list.html:36
msgid "Website, referral..."
msgstr ""

#: app/templates/leads/list.html:54 app/templates/leads/list.html:78
#: app/templates/leads/view.html:87
msgid "Score"
msgstr ""

#: app/templates/leads/list.html:95
msgid "No leads found"
msgstr ""

#: app/templates/leads/list.html:97
msgid "Create First Lead"
msgstr ""

#: app/templates/leads/view.html:19
msgid "Mark this lead as lost?"
msgstr ""

#: app/templates/leads/view.html:21
msgid "Mark Lost"
msgstr ""

#: app/templates/leads/view.html:30
msgid "Lead"
msgstr ""

#: app/templates/leads/view.html:72
msgid "No contact details yet"
msgstr ""

#: app/templates/leads/view.html:78
msgid "Lead Details"
msgstr ""

#: app/templates/main/about.html:9
msgid "Professional time tracking and project management"
msgstr ""

#: app/templates/main/about.html:24
msgid "A comprehensive web-based time tracking application built with Flask, featuring project management, client organization, task management, invoicing, and advanced analytics."
msgstr ""

#: app/templates/main/about.html:35 app/templates/main/help.html:32
msgid "Invoicing"
msgstr ""

#: app/templates/main/about.html:45
msgid "TimeTracker is free and open source. You can donate or buy a supporter license — features are never locked."
msgstr ""

#: app/templates/main/about.html:55 app/templates/main/help.html:111
msgid "Smart Timers"
msgstr ""

#: app/templates/main/about.html:57
msgid "Real-time tracking with idle detection and live updates"
msgstr ""

#: app/templates/main/about.html:62 app/templates/main/help.html:29
#: app/templates/main/help.html:236
msgid "Client Management"
msgstr ""

#: app/templates/main/about.html:64
msgid "Organize clients with contacts, rates, and project relations"
msgstr ""

#: app/templates/main/about.html:69
msgid "Task System"
msgstr ""

#: app/templates/main/about.html:71
msgid "Break down projects into tasks with progress tracking"
msgstr ""

#: app/templates/main/about.html:76
msgid "PDF Invoices"
msgstr ""

#: app/templates/main/about.html:78
msgid "Generate professional invoices from tracked time"
msgstr ""

#: app/templates/main/about.html:85 app/templates/main/help.html:427
msgid "Core Features"
msgstr ""

#: app/templates/main/about.html:87
msgid "Start/stop timers with project and task association"
msgstr ""

#: app/templates/main/about.html:88
msgid "Manual time entry with notes and tags"
msgstr ""

#: app/templates/main/about.html:89
msgid "Client and project organization"
msgstr ""

#: app/templates/main/about.html:90
msgid "Role-based access and user profiles"
msgstr ""

#: app/templates/main/about.html:94
msgid "Advanced Features"
msgstr ""

#: app/templates/main/about.html:96
msgid "Branded PDF invoicing with tax and payment tracking"
msgstr ""

#: app/templates/main/about.html:97
msgid "Visual analytics and detailed reporting"
msgstr ""

#: app/templates/main/about.html:98
msgid "REST API for integrations"
msgstr ""

#: app/templates/main/about.html:99
msgid "PWA capabilities and mobile-friendly UI"
msgstr ""

#: app/templates/main/about.html:106
msgid "Platform Support"
msgstr ""

#: app/templates/main/about.html:109
msgid "Web Application"
msgstr ""

#: app/templates/main/about.html:111
msgid "Desktop browsers (Chrome, Firefox, Safari, Edge)"
msgstr ""

#: app/templates/main/about.html:112
msgid "Mobile responsive design"
msgstr ""

#: app/templates/main/about.html:113
msgid "Progressive Web App (PWA)"
msgstr ""

#: app/templates/main/about.html:114
msgid "Touch-friendly tablet interface"
msgstr ""

#: app/templates/main/about.html:118
msgid "Operating Systems"
msgstr ""

#: app/templates/main/about.html:120
msgid "Windows, macOS, Linux"
msgstr ""

#: app/templates/main/about.html:121
msgid "Android and iOS (browser)"
msgstr ""

#: app/templates/main/about.html:122
msgid "Raspberry Pi support"
msgstr ""

#: app/templates/main/about.html:123
msgid "Dockerized deployment"
msgstr ""

#: app/templates/main/about.html:127
msgid "Database Support"
msgstr ""

#: app/templates/main/about.html:129
msgid "PostgreSQL (recommended)"
msgstr ""

#: app/templates/main/about.html:130
msgid "SQLite (dev/test)"
msgstr ""

#: app/templates/main/about.html:131
msgid "Automatic migrations with Flask-Migrate"
msgstr ""

#: app/templates/main/about.html:132
msgid "Backup and restoration tools"
msgstr ""

#: app/templates/main/about.html:140
msgid "Technical Specifications"
msgstr ""

#: app/templates/main/about.html:143
msgid "Technology Stack"
msgstr ""

#: app/templates/main/about.html:145
msgid "Backend"
msgstr ""

#: app/templates/main/about.html:146
msgid "Frontend"
msgstr ""

#: app/templates/main/about.html:148
msgid "Deployment"
msgstr ""

#: app/templates/main/about.html:152
msgid "Key Capabilities"
msgstr ""

#: app/templates/main/about.html:154
msgid "Real-time"
msgstr ""

#: app/templates/main/about.html:155
msgid "i18n"
msgstr ""

#: app/templates/main/about.html:165
msgid "Open Source & Community"
msgstr ""

#: app/templates/main/about.html:168
msgid "Open Source Benefits"
msgstr ""

#: app/templates/main/about.html:170
msgid "Full source code available on GitHub"
msgstr ""

#: app/templates/main/about.html:171
msgid "Licensed under GPL v3.0"
msgstr ""

#: app/templates/main/about.html:172
msgid "Community-driven development"
msgstr ""

#: app/templates/main/about.html:173
msgid "Transparent issue tracking and bug reports"
msgstr ""

#: app/templates/main/about.html:177
msgid "Deployment Options"
msgstr ""

#: app/templates/main/about.html:179
msgid "Docker images (GHCR)"
msgstr ""

#: app/templates/main/about.html:180
msgid "Self-hosted deployment with full control"
msgstr ""

#: app/templates/main/about.html:181
msgid "Cloud-ready with Compose configs"
msgstr ""

#: app/templates/main/about.html:187
msgid "View on GitHub"
msgstr ""

#: app/templates/main/about.html:191 app/templates/main/donate.html:201
msgid "Support updates"
msgstr ""

#: app/templates/main/about.html:205 app/templates/main/donate.html:17
msgid "Support TimeTracker Development"
msgstr ""

#: app/templates/main/about.html:208
msgid "TimeTracker is free and open-source. Support updates and new features — or remove prompts with a one-time key."
msgstr ""

#: app/templates/main/about.html:219 app/templates/main/donate.html:49
msgid "Remove prompts with a one-time key."
msgstr ""

#: app/templates/main/about.html:230
msgid "Getting Help & Resources"
msgstr ""

#: app/templates/main/about.html:236 app/templates/main/help.html:767
msgid "Documentation"
msgstr ""

#: app/templates/main/about.html:237
msgid "Step-by-step guides for all features."
msgstr ""

#: app/templates/main/about.html:239
msgid "View Help"
msgstr ""

#: app/templates/main/about.html:246
msgid "System Information"
msgstr ""

#: app/templates/main/about.html:247
msgid "Status, versions, and configuration details."
msgstr ""

#: app/templates/main/about.html:253
msgid "Admin access required"
msgstr ""

#: app/templates/main/about.html:260 app/templates/main/help.html:777
msgid "Community Support"
msgstr ""

#: app/templates/main/about.html:261
msgid "Report issues, request features, contribute."
msgstr ""

#: app/templates/main/about.html:263
msgid "GitHub Issues"
msgstr ""

#: app/templates/main/dashboard.html:16
#, python-format
msgid "Logged %(duration)s on %(project)s"
msgstr ""

#: app/templates/main/dashboard.html:22 app/templates/main/dashboard.html:241
msgid "View time entries"
msgstr ""

#: app/templates/main/dashboard.html:29
msgid "Here's a quick overview of your work."
msgstr ""

#: app/templates/main/dashboard.html:43
msgid "Start timer with same project, task and notes as last entry"
msgstr ""

#: app/templates/main/dashboard.html:44
msgid "Repeat last"
msgstr ""

#: app/templates/main/dashboard.html:46
msgid "Start timer with last project and notes?"
msgstr ""

#: app/templates/main/dashboard.html:53 app/templates/main/dashboard.html:54
#: app/templates/reports/builder.html:24
msgid "Quick start"
msgstr ""

#: app/templates/main/dashboard.html:70
msgid "Paused"
msgstr ""

#: app/templates/main/dashboard.html:73 app/templates/timer/edit_timer.html:296
#: app/templates/timer/manual_entry.html:122
#: app/templates/timer/timer_page.html:95
msgid "Break"
msgstr ""

#: app/templates/main/dashboard.html:78 app/templates/timer/edit_timer.html:425
msgid "Running"
msgstr ""

#: app/templates/main/dashboard.html:81
msgid "Break so far"
msgstr ""

#: app/templates/main/dashboard.html:95
msgid "Started at"
msgstr ""

#: app/templates/main/dashboard.html:98
msgid "Elapsed"
msgstr ""

#: app/templates/main/dashboard.html:102
msgid "Adjust time"
msgstr ""

#: app/templates/main/dashboard.html:106
msgid "Subtract 15 min"
msgstr ""

#: app/templates/main/dashboard.html:107
msgid "Subtract 5 min"
msgstr ""

#: app/templates/main/dashboard.html:108
msgid "Add 5 min"
msgstr ""

#: app/templates/main/dashboard.html:109
msgid "Add 15 min"
msgstr ""

#: app/templates/main/dashboard.html:118
msgid "Resume timer"
msgstr ""

#: app/templates/main/dashboard.html:119 app/templates/main/dashboard.html:145
#: app/templates/timer/timer_page.html:76
msgid "Resume"
msgstr ""

#: app/templates/main/dashboard.html:125
msgid "Pause timer (break time will be counted on resume)"
msgstr ""

#: app/templates/main/dashboard.html:126 app/templates/tasks/view.html:21
#: app/templates/timer/timer_page.html:83
msgid "Pause"
msgstr ""

#: app/templates/main/dashboard.html:132
msgid "Stop and save current time"
msgstr ""

#: app/templates/main/dashboard.html:133
msgid "Stop & save"
msgstr ""

#: app/templates/main/dashboard.html:140
msgid "No active timer."
msgstr ""

#: app/templates/main/dashboard.html:142
msgid "Resume your last session or use the buttons above to repeat last / start a new timer."
msgstr ""

#: app/templates/main/dashboard.html:144
msgid "Resume last session"
msgstr ""

#: app/templates/main/dashboard.html:149
msgid "Click \"Start Timer\" above to begin tracking your time."
msgstr ""

#: app/templates/main/dashboard.html:161
msgid "Today's Hours"
msgstr ""

#: app/templates/main/dashboard.html:169 app/templates/main/dashboard.html:193
msgid "overtime"
msgstr ""

#: app/templates/main/dashboard.html:186
msgid "Week's Hours"
msgstr ""

#: app/templates/main/dashboard.html:207
msgid "Month's Hours"
msgstr ""

#: app/templates/main/dashboard.html:214
msgid "Overtime (YTD)"
msgstr ""

#: app/templates/main/dashboard.html:227
msgid "If this saved you even 1 hour, consider supporting ❤️"
msgstr ""

#: app/templates/main/dashboard.html:227
msgid "Start tracking to see your productivity insights here."
msgstr ""

#: app/templates/main/dashboard.html:227 app/templates/main/dashboard.html:237
msgid "Loading insights…"
msgstr ""

#: app/templates/main/dashboard.html:233
msgid "Value insights"
msgstr ""

#: app/templates/main/dashboard.html:234
msgid "Your tracked time at a glance"
msgstr ""

#: app/templates/main/dashboard.html:246
msgid "Total hours tracked"
msgstr ""

#: app/templates/main/dashboard.html:254
msgid "Active days"
msgstr ""

#: app/templates/main/dashboard.html:259
msgid "Hours per day (last 7 days)"
msgstr ""

#: app/templates/main/dashboard.html:260
msgid "Hours per day last seven days"
msgstr ""

#: app/templates/main/dashboard.html:264
msgid "Most productive day"
msgstr ""

#: app/templates/main/dashboard.html:268
msgid "Avg session length"
msgstr ""

#: app/templates/main/dashboard.html:273
msgid "Estimated value tracked"
msgstr ""

#: app/templates/main/dashboard.html:283 app/templates/main/dashboard.html:296
msgid "This week vs last week"
msgstr ""

#: app/templates/main/dashboard.html:284 app/templates/main/dashboard.html:297
msgid "Hours per day (Mon–today vs same days last week)"
msgstr ""

#: app/templates/main/dashboard.html:285
msgid "hrs this week"
msgstr ""

#: app/templates/main/dashboard.html:286
msgid "vs last week"
msgstr ""

#: app/templates/main/dashboard.html:287
msgid "This week"
msgstr ""

#: app/templates/main/dashboard.html:288
msgid "Last week"
msgstr ""

#: app/templates/main/dashboard.html:289
msgid "Could not load comparison."
msgstr ""

#: app/templates/main/dashboard.html:313
msgid "This week and last week hours by day"
msgstr ""

#: app/templates/main/dashboard.html:327 app/templates/reports/index.html:221
msgid "Recent Entries"
msgstr ""

#: app/templates/main/dashboard.html:329
msgid "View all"
msgstr ""

#: app/templates/main/dashboard.html:369 app/templates/main/search.html:66
#: app/templates/tasks/view.html:81
msgid "Resume - Start a new timer with same properties"
msgstr ""

#: app/templates/main/dashboard.html:372 app/templates/main/search.html:70
#: app/templates/tasks/view.html:84
msgid "Edit entry"
msgstr ""

#: app/templates/main/dashboard.html:375
msgid "Duplicate entry"
msgstr ""

#: app/templates/main/dashboard.html:382 app/templates/main/search.html:77
#: app/templates/tasks/view.html:91
msgid "Delete entry"
msgstr ""

#: app/templates/main/dashboard.html:396
msgid "No recent entries found."
msgstr ""

#: app/templates/main/dashboard.html:397 app/templates/reports/index.html:245
msgid "Start tracking time to see entries here."
msgstr ""

#: app/templates/main/dashboard.html:419
msgid "Weekly Goal"
msgstr ""

#: app/templates/main/dashboard.html:441
msgid "Days Left"
msgstr ""

#: app/templates/main/dashboard.html:448
msgid "Need"
msgstr ""

#: app/templates/main/dashboard.html:448
msgid "to reach goal"
msgstr ""

#: app/templates/main/dashboard.html:459
msgid "No Weekly Goal"
msgstr ""

#: app/templates/main/dashboard.html:462
msgid "Set a weekly time goal to track your progress"
msgstr ""

#: app/templates/main/dashboard.html:466
#: app/templates/weekly_goals/create.html:129
#: app/templates/weekly_goals/index.html:146
msgid "Create Goal"
msgstr ""

#: app/templates/main/dashboard.html:480
msgid "Time by project (last 7 days)"
msgstr ""

#: app/templates/main/dashboard.html:482
msgid "View report"
msgstr ""

#: app/templates/main/dashboard.html:486
msgid "Time distribution by project for the last 7 days"
msgstr ""

#: app/templates/main/dashboard.html:525
msgid "No time logged in the last 7 days."
msgstr ""

#: app/templates/main/dashboard.html:526
msgid "Start tracking to see distribution here."
msgstr ""

#: app/templates/main/dashboard.html:537
msgid "Top Projects (30 days)"
msgstr ""

#: app/templates/main/dashboard.html:575
msgid "No activity in the last 30 days."
msgstr ""

#: app/templates/main/dashboard.html:576
msgid "Start tracking time on projects to see them here."
msgstr ""

#: app/templates/main/dashboard.html:596
msgid "Live"
msgstr ""

#: app/templates/main/dashboard.html:638
#, python-format
msgid "You have tracked %(hours)s hours"
msgstr ""

#: app/templates/main/dashboard.html:639
#, python-format
msgid "You have created %(count)s entries"
msgstr ""

#: app/templates/main/dashboard.html:641
#, python-format
msgid "Reports generated: %(n)s"
msgstr ""

#: app/templates/main/dashboard.html:645
msgid "Thank you for supporting development. Sharing TimeTracker still helps a lot."
msgstr ""

#: app/templates/main/dashboard.html:647
msgid "Share & support"
msgstr ""

#: app/templates/main/dashboard.html:651
msgid "If this saves you time, consider supporting development — everything stays free and open."
msgstr ""

#: app/templates/main/dashboard.html:654
msgid "Buy License (€25)"
msgstr ""

#: app/templates/main/dashboard.html:685
msgid "Create new task..."
msgstr ""

#: app/templates/main/dashboard.html:686
msgid "Loading tasks..."
msgstr ""

#: app/templates/main/dashboard.html:687
msgid "Enter new task name:"
msgstr ""

#: app/templates/main/dashboard.html:688
msgid "Failed to create task: "
msgstr ""

#: app/templates/main/dashboard.html:690
msgid "Please complete creating the task or select an existing task"
msgstr ""

#: app/templates/main/dashboard.html:698
#: app/templates/timer/manual_entry.html:558
msgid "A task must be selected when logging time for a project"
msgstr ""

#: app/templates/main/dashboard.html:699
#: app/templates/timer/manual_entry.html:581
msgid "A description is required when logging time"
msgstr ""

#: app/templates/main/dashboard.html:700
#: app/templates/timer/manual_entry.html:45
#, python-format
msgid "Description must be at least %(min)s characters"
msgstr ""

#: app/templates/main/dashboard.html:715
msgid "Quick start with a template"
msgstr ""

#: app/templates/main/dashboard.html:726
msgid "All templates"
msgstr ""

#: app/templates/main/dashboard.html:745
#: app/templates/timer/manual_entry.html:74
#: app/templates/timer/timer_page.html:153
msgid "Select either a project or a client"
msgstr ""

#: app/templates/main/dashboard.html:750
#: app/templates/timer/bulk_entry.html:117
#: app/templates/timer/manual_entry.html:79
msgid "Task (optional)"
msgstr ""

#: app/templates/main/dashboard.html:756
msgid "Select a project first to load tasks, or choose \"Create new task...\" to add one"
msgstr ""

#: app/templates/main/dashboard.html:760
msgid "Notes (optional)"
msgstr ""

#: app/templates/main/dashboard.html:767
msgid "Tags (optional)"
msgstr ""

#: app/templates/main/dashboard.html:768
msgid "e.g. meeting, dev, admin"
msgstr ""

#: app/templates/main/dashboard.html:775
msgid "Comma-separated; recent tags shown as suggestions."
msgstr ""

#: app/templates/main/dashboard.html:784
msgid "Enter a name for the new task."
msgstr ""

#: app/templates/main/dashboard.html:785
#: app/templates/project_templates/create.html:76
#: app/templates/project_templates/edit.html:79
#: app/templates/project_templates/edit.html:105
msgid "Task name"
msgstr ""

#: app/templates/main/dashboard.html:793
msgid "Create task"
msgstr ""

#: app/templates/main/dashboard.html:936
msgid "Task name is required."
msgstr ""

#: app/templates/main/dashboard.html:1546
#: app/templates/timer/edit_timer.html:811
#: app/templates/timer/manual_entry.html:985
msgid "No valid image files selected. Please select PNG, JPG, GIF, or WebP images."
msgstr ""

#: app/templates/main/dashboard.html:1558
#: app/templates/timer/edit_timer.html:823
#: app/templates/timer/manual_entry.html:997
msgid "Uploading"
msgstr ""

#: app/templates/main/dashboard.html:1558
#: app/templates/main/dashboard.html:1605
#: app/templates/timer/edit_timer.html:823
#: app/templates/timer/edit_timer.html:870
#: app/templates/timer/manual_entry.html:997
#: app/templates/timer/manual_entry.html:1044
msgid "images"
msgstr ""

#: app/templates/main/dashboard.html:1559
#: app/templates/timer/edit_timer.html:824
#: app/templates/timer/manual_entry.html:998
msgid "Uploading image"
msgstr ""

#: app/templates/main/dashboard.html:1605
#: app/templates/timer/edit_timer.html:870
#: app/templates/timer/manual_entry.html:1044
msgid "Successfully uploaded"
msgstr ""

#: app/templates/main/dashboard.html:1616
#: app/templates/timer/edit_timer.html:881
#: app/templates/timer/manual_entry.html:1055
msgid "image(s) failed to upload"
msgstr ""

#: app/templates/main/dashboard.html:1625
#: app/templates/timer/edit_timer.html:890
#: app/templates/timer/manual_entry.html:1064
msgid "Failed to upload images. Please try again."
msgstr ""

#: app/templates/main/dashboard.html:1637
#: app/templates/timer/edit_timer.html:902
#: app/templates/timer/manual_entry.html:1076
msgid "Failed to upload images. Please check your connection and try again."
msgstr ""

#: app/templates/main/donate.html:10
msgid "Support Development"
msgstr ""

#: app/templates/main/donate.html:20
msgid "Donate to support development — or get a key to remove prompts"
msgstr ""

#: app/templates/main/donate.html:22
msgid "Support updates and keep TimeTracker free for everyone"
msgstr ""

#: app/templates/main/donate.html:29 app/templates/main/donate.html:114
#: app/templates/main/donate.html:275
msgid "Remove prompts with key"
msgstr ""

#: app/templates/main/donate.html:59
msgid "Why Your Support Matters"
msgstr ""

#: app/templates/main/donate.html:63
msgid "TimeTracker is a free, open-source project built with passion and dedication. Your donations directly support:"
msgstr ""

#: app/templates/main/donate.html:70
msgid "Server Infrastructure"
msgstr ""

#: app/templates/main/donate.html:72
msgid "Hosting, databases, and CDN costs to keep TimeTracker fast and reliable"
msgstr ""

#: app/templates/main/donate.html:80
msgid "Feature Development"
msgstr ""

#: app/templates/main/donate.html:82
msgid "New features, improvements, and bug fixes based on your feedback"
msgstr ""

#: app/templates/main/donate.html:90
msgid "Security & Maintenance"
msgstr ""

#: app/templates/main/donate.html:92
msgid "Regular security updates, dependency maintenance, and performance optimization"
msgstr ""

#: app/templates/main/donate.html:100
msgid "Internationalization"
msgstr ""

#: app/templates/main/donate.html:102
msgid "Translation support, localization, and making TimeTracker accessible worldwide"
msgstr ""

#: app/templates/main/donate.html:117
msgid "One key per instance; key sent by email after payment (€25 one-time). No subscription."
msgstr ""

#: app/templates/main/donate.html:122
msgid "Copy your System ID from Admin → Settings → Support visibility."
msgstr ""

#: app/templates/main/donate.html:126
msgid "Buy a key at the link below; you’ll receive it by email."
msgstr ""

#: app/templates/main/donate.html:130
msgid "Paste the code in Admin → Settings → Support visibility and verify."
msgstr ""

#: app/templates/main/donate.html:148
msgid "Your TimeTracker Journey"
msgstr ""

#: app/templates/main/donate.html:155
msgid "Days using TimeTracker"
msgstr ""

#: app/templates/main/donate.html:164
msgid "Time entries tracked"
msgstr ""

#: app/templates/main/donate.html:179
msgid "Thank you for being part of the TimeTracker community!"
msgstr ""

#: app/templates/main/donate.html:188
msgid "How to Support"
msgstr ""

#: app/templates/main/donate.html:191
msgid "Every contribution, no matter the size, makes a difference. Your support helps ensure TimeTracker remains free and continues to evolve."
msgstr ""

#: app/templates/main/donate.html:207
msgid "You'll be redirected to Buy Me a Coffee where you can choose your contribution amount"
msgstr ""

#: app/templates/main/donate.html:215
msgid "The Impact of Your Support"
msgstr ""

#: app/templates/main/donate.html:220
msgid "Enables faster development cycles and quicker feature releases"
msgstr ""

#: app/templates/main/donate.html:224
msgid "Supports better documentation and user guides"
msgstr ""

#: app/templates/main/donate.html:228
msgid "Helps maintain high-quality code and security standards"
msgstr ""

#: app/templates/main/donate.html:232
msgid "Keeps TimeTracker free and accessible for everyone"
msgstr ""

#: app/templates/main/donate.html:241
msgid "Other Ways to Help"
msgstr ""

#: app/templates/main/donate.html:250
msgid "Contribute on GitHub"
msgstr ""

#: app/templates/main/donate.html:252
msgid "Report bugs, suggest features, or submit code"
msgstr ""

#: app/templates/main/donate.html:261
msgid "Help Others"
msgstr ""

#: app/templates/main/donate.html:263
msgid "Share your knowledge in the community"
msgstr ""

#: app/templates/main/donate.html:277
msgid "One-time key per instance; no subscription"
msgstr ""

#: app/templates/main/help.html:9
msgid "Complete documentation and user guide"
msgstr ""

#: app/templates/main/help.html:20
msgid "Quick Navigation"
msgstr ""

#: app/templates/main/help.html:23
msgid "Filter sections..."
msgstr ""

#: app/templates/main/help.html:26
msgid "Quick Start"
msgstr ""

#: app/templates/main/help.html:34 app/templates/main/help.html:471
msgid "Reports & Analytics"
msgstr ""

#: app/templates/main/help.html:35 app/templates/main/help.html:521
msgid "Productivity Features"
msgstr ""

#: app/templates/main/help.html:37
msgid "Admin Features"
msgstr ""

#: app/templates/main/help.html:39 app/templates/main/help.html:653
msgid "Mobile Usage"
msgstr ""

#: app/templates/main/help.html:40 app/templates/main/help.html:698
msgid "API Documentation"
msgstr ""

#: app/templates/main/help.html:41
msgid "Troubleshooting"
msgstr ""

#: app/templates/main/help.html:50
msgid "TimeTracker Help Center"
msgstr ""

#: app/templates/main/help.html:51
msgid "Everything you need to know to get the most out of TimeTracker"
msgstr ""

#: app/templates/main/help.html:55
msgid "Start Tracking Time"
msgstr ""

#: app/templates/main/help.html:58
msgid "View Projects"
msgstr ""

#: app/templates/main/help.html:61
msgid "Generate Reports"
msgstr ""

#: app/templates/main/help.html:69
msgid "API Docs"
msgstr ""

#: app/templates/main/help.html:72
msgid "Restart Product Tour"
msgstr ""

#: app/templates/main/help.html:79
msgid "Quick Start Guide"
msgstr ""

#: app/templates/main/help.html:82
msgid "For New Users"
msgstr ""

#: app/templates/main/help.html:84
msgid "Log in with your username (no password required)"
msgstr ""

#: app/templates/main/help.html:85
msgid "Explore the dashboard to see your overview"
msgstr ""

#: app/templates/main/help.html:86
msgid "Start your first timer on an existing project"
msgstr ""

#: app/templates/main/help.html:87
msgid "View your time entries in reports"
msgstr ""

#: app/templates/main/help.html:91
msgid "For Administrators"
msgstr ""

#: app/templates/main/help.html:93
msgid "Set up clients in the Client Management section"
msgstr ""

#: app/templates/main/help.html:94
msgid "Create projects and assign them to clients"
msgstr ""

#: app/templates/main/help.html:95
msgid "Configure system settings (timezone, currency, etc.)"
msgstr ""

#: app/templates/main/help.html:96
msgid "Manage users and permissions"
msgstr ""

#: app/templates/main/help.html:102 app/templates/main/help.html:370
#: app/templates/main/help.html:515
msgid "Pro Tip:"
msgstr ""

#: app/templates/main/help.html:102
msgid "Use the mobile-friendly interface to track time on the go. The timer continues running even if you close your browser!"
msgstr ""

#: app/templates/main/help.html:112
msgid "Real-time tracking with automatic idle detection and WebSocket updates"
msgstr ""

#: app/templates/main/help.html:115 app/templates/timer/calendar.html:890
msgid "Manual Entry"
msgstr ""

#: app/templates/main/help.html:116
msgid "Log time manually with custom start and end times"
msgstr ""

#: app/templates/main/help.html:121
msgid "Starting a Timer"
msgstr ""

#: app/templates/main/help.html:123
msgid "Click the timer icon in the header (round button) to start or stop from any page"
msgstr ""

#: app/templates/main/help.html:124
msgid "Or navigate to the Timer page or dashboard"
msgstr ""

#: app/templates/main/help.html:125
msgid "Select a project from the dropdown"
msgstr ""

#: app/templates/main/help.html:126
msgid "Optionally select a task for more detailed tracking"
msgstr ""

#: app/templates/main/help.html:127
msgid "Add notes about what you're working on (optional)"
msgstr ""

#: app/templates/main/help.html:128
msgid "Add tags separated by commas (optional)"
msgstr ""

#: app/templates/main/help.html:129
msgid "Click \"Start Timer\""
msgstr ""

#: app/templates/main/help.html:133
msgid "Timer Features"
msgstr ""

#: app/templates/main/help.html:135
msgid "Real-time duration display"
msgstr ""

#: app/templates/main/help.html:136
msgid "Pause and Stop on the dashboard — Pause saves your time so you can resume later"
msgstr ""

#: app/templates/main/help.html:137
msgid "Resume last session with one click (same project/task/notes)"
msgstr ""

#: app/templates/main/help.html:138
msgid "Quick time adjustment (−15 / −5 / +5 / +15 min) while the timer is running"
msgstr ""

#: app/templates/main/help.html:139
msgid "Continues running if browser closes"
msgstr ""

#: app/templates/main/help.html:140
msgid "Automatic idle detection (configurable)"
msgstr ""

#: app/templates/main/help.html:141
msgid "One active timer per user (configurable)"
msgstr ""

#: app/templates/main/help.html:142
msgid "WebSocket live updates"
msgstr ""

#: app/templates/main/help.html:147
msgid "Manual Time Entry"
msgstr ""

#: app/templates/main/help.html:148
msgid "Create time entries manually when you need to record time spent away from the computer or adjust existing entries."
msgstr ""

#: app/templates/main/help.html:151
msgid "Required Information"
msgstr ""

#: app/templates/main/help.html:153
msgid "Project selection"
msgstr ""

#: app/templates/main/help.html:154
msgid "Start date and time"
msgstr ""

#: app/templates/main/help.html:155
msgid "End date and time"
msgstr ""

#: app/templates/main/help.html:159
msgid "Optional Information"
msgstr ""

#: app/templates/main/help.html:161
msgid "Task assignment"
msgstr ""

#: app/templates/main/help.html:162
msgid "Description/notes"
msgstr ""

#: app/templates/main/help.html:163
msgid "Tags for categorization"
msgstr ""

#: app/templates/main/help.html:164
msgid "Billable status override"
msgstr ""

#: app/templates/main/help.html:170
msgid "Advanced Time Entry Features"
msgstr ""

#: app/templates/main/help.html:173
msgid "Bulk Entry"
msgstr ""

#: app/templates/main/help.html:174
msgid "Create multiple time entries for consecutive days with the same project and duration. Perfect for regular work patterns."
msgstr ""

#: app/templates/main/help.html:177
msgid "Templates"
msgstr ""

#: app/templates/main/help.html:178
msgid "Save frequently used time entries as templates for quick reuse. Saves project, task, and notes."
msgstr ""

#: app/templates/main/help.html:182
msgid "Visualize your time entries on a calendar. Drag-and-drop to reschedule or click dates to add entries."
msgstr ""

#: app/templates/main/help.html:193
msgid "Project Information"
msgstr ""

#: app/templates/main/help.html:195
msgid "Descriptive project name"
msgstr ""

#: app/templates/main/help.html:196
msgid "Associated client organization"
msgstr ""

#: app/templates/main/help.html:197
msgid "Project details and scope"
msgstr ""

#: app/templates/main/help.html:198
msgid "Active, completed, or archived"
msgstr ""

#: app/templates/main/help.html:202
msgid "Billing Information"
msgstr ""

#: app/templates/main/help.html:204
msgid "Whether time should be tracked for billing"
msgstr ""

#: app/templates/main/help.html:205
msgid "Rate for billable time calculations"
msgstr ""

#: app/templates/main/help.html:206 app/templates/projects/create.html:78
#: app/templates/projects/edit.html:72
msgid "Billing Reference"
msgstr ""

#: app/templates/main/help.html:206
msgid "PO number or billing code"
msgstr ""

#: app/templates/main/help.html:213
msgid "Project Operations"
msgstr ""

#: app/templates/main/help.html:215
msgid "Create new projects with client relationships"
msgstr ""

#: app/templates/main/help.html:216
msgid "Edit existing projects to update details"
msgstr ""

#: app/templates/main/help.html:217
msgid "Archive projects to hide from timers (preserves data)"
msgstr ""

#: app/templates/main/help.html:218
msgid "Delete projects (removes all associated time entries)"
msgstr ""

#: app/templates/main/help.html:222
msgid "Best Practices"
msgstr ""

#: app/templates/main/help.html:224
msgid "Use descriptive project names"
msgstr ""

#: app/templates/main/help.html:225
msgid "Set accurate hourly rates for billing"
msgstr ""

#: app/templates/main/help.html:226
msgid "Archive instead of delete when possible"
msgstr ""

#: app/templates/main/help.html:227
msgid "Use billing references for external tracking"
msgstr ""

#: app/templates/main/help.html:237
msgid "The client management system helps organize your work by client organizations, preventing errors and streamlining project creation."
msgstr ""

#: app/templates/main/help.html:240
msgid "Client Information"
msgstr ""

#: app/templates/main/help.html:242
msgid "Organization Name"
msgstr ""

#: app/templates/main/help.html:242
msgid "Company or client name"
msgstr ""

#: app/templates/main/help.html:243
msgid "Primary contact details"
msgstr ""

#: app/templates/main/help.html:244
msgid "Email & Phone"
msgstr ""

#: app/templates/main/help.html:244
msgid "Contact information"
msgstr ""

#: app/templates/main/help.html:245
msgid "Business address"
msgstr ""

#: app/templates/main/help.html:249
msgid "Benefits"
msgstr ""

#: app/templates/main/help.html:251
msgid "Dropdown selection prevents typos"
msgstr ""

#: app/templates/main/help.html:252
msgid "Default rates auto-populate projects"
msgstr ""

#: app/templates/main/help.html:253
msgid "Consistent client naming"
msgstr ""

#: app/templates/main/help.html:254
msgid "Easier project organization"
msgstr ""

#: app/templates/main/help.html:261
msgid "Project Count"
msgstr ""

#: app/templates/main/help.html:262
msgid "Total and active projects"
msgstr ""

#: app/templates/main/help.html:267
msgid "Total hours worked"
msgstr ""

#: app/templates/main/help.html:271
msgid "Cost Estimation"
msgstr ""

#: app/templates/main/help.html:272
msgid "Estimated billing amounts"
msgstr ""

#: app/templates/main/help.html:280
msgid "Break down projects into manageable tasks with detailed tracking and progress monitoring."
msgstr ""

#: app/templates/main/help.html:283
msgid "Task Properties"
msgstr ""

#: app/templates/main/help.html:285
msgid "Name & Description"
msgstr ""

#: app/templates/main/help.html:285
msgid "Clear task identification"
msgstr ""

#: app/templates/main/help.html:286
msgid "Priority Levels"
msgstr ""

#: app/templates/main/help.html:286
msgid "Low, Medium, High, Urgent"
msgstr ""

#: app/templates/main/help.html:287
msgid "Due Dates"
msgstr ""

#: app/templates/main/help.html:287
msgid "Deadline tracking"
msgstr ""

#: app/templates/main/help.html:288
msgid "Assignment"
msgstr ""

#: app/templates/main/help.html:288
msgid "Task ownership"
msgstr ""

#: app/templates/main/help.html:292
msgid "Status Tracking"
msgstr ""

#: app/templates/main/help.html:294
msgid "To Do - Not started"
msgstr ""

#: app/templates/main/help.html:295
msgid "In Progress - Currently working"
msgstr ""

#: app/templates/main/help.html:296
msgid "Review - Ready for review"
msgstr ""

#: app/templates/main/help.html:297
msgid "Done - Completed"
msgstr ""

#: app/templates/main/help.html:298
msgid "Cancelled - Not needed"
msgstr ""

#: app/templates/main/help.html:304
msgid "Time Tracking Features"
msgstr ""

#: app/templates/main/help.html:306
msgid "Start timers directly from tasks"
msgstr ""

#: app/templates/main/help.html:307
msgid "Link time entries to specific tasks"
msgstr ""

#: app/templates/main/help.html:308
msgid "Track estimated vs actual hours"
msgstr ""

#: app/templates/main/help.html:309
msgid "Monitor task progress automatically"
msgstr ""

#: app/templates/main/help.html:313
msgid "Task Views"
msgstr ""

#: app/templates/main/help.html:315
msgid "My Tasks - Your assigned tasks"
msgstr ""

#: app/templates/main/help.html:316
msgid "All Tasks - Complete task list"
msgstr ""

#: app/templates/main/help.html:317
msgid "Overdue Tasks - Past due items"
msgstr ""

#: app/templates/main/help.html:318
msgid "Project Tasks - Tasks within projects"
msgstr ""

#: app/templates/main/help.html:324
msgid "Collaboration Features"
msgstr ""

#: app/templates/main/help.html:326
msgid "Task Comments - Threaded discussions on tasks"
msgstr ""

#: app/templates/main/help.html:327
msgid "Markdown Support - Rich formatting in descriptions"
msgstr ""

#: app/templates/main/help.html:328
msgid "User Mentions - Tag team members (if enabled)"
msgstr ""

#: app/templates/main/help.html:329
msgid "File Attachments - Attach files to tasks (if enabled)"
msgstr ""

#: app/templates/main/help.html:333
msgid "Markdown Formatting"
msgstr ""

#: app/templates/main/help.html:334
msgid "Task and project descriptions support Markdown:"
msgstr ""

#: app/templates/main/help.html:336
msgid "**Bold**, *Italic*, ~~Strikethrough~~"
msgstr ""

#: app/templates/main/help.html:337
msgid "# Headings, - Lists, [Links](url)"
msgstr ""

#: app/templates/main/help.html:338
msgid "```code blocks```, tables, images"
msgstr ""

#: app/templates/main/help.html:347
msgid "Visualize your workflow with a drag-and-drop Kanban board for intuitive task management."
msgstr ""

#: app/templates/main/help.html:350
msgid "Board Features"
msgstr ""

#: app/templates/main/help.html:352
msgid "Customizable columns matching task statuses"
msgstr ""

#: app/templates/main/help.html:353
msgid "Drag-and-drop tasks between columns"
msgstr ""

#: app/templates/main/help.html:354
msgid "Filter by project, user, or priority"
msgstr ""

#: app/templates/main/help.html:355
msgid "Quick search across all tasks"
msgstr ""

#: app/templates/main/help.html:359
msgid "Using the Kanban Board"
msgstr ""

#: app/templates/main/help.html:361
msgid "Access from the Tasks menu or project page"
msgstr ""

#: app/templates/main/help.html:362
msgid "Drag tasks to different columns to change status"
msgstr ""

#: app/templates/main/help.html:363
msgid "Click on a task card to view/edit details"
msgstr ""

#: app/templates/main/help.html:364
msgid "Use filters to focus on specific work"
msgstr ""

#: app/templates/main/help.html:370
msgid "The Kanban board is perfect for sprint planning and daily standups. Each column represents a stage in your workflow!"
msgstr ""

#: app/templates/main/help.html:376
msgid "Expense Tracking"
msgstr ""

#: app/templates/main/help.html:377
msgid "Track business expenses, manage receipts, and handle reimbursements efficiently."
msgstr ""

#: app/templates/main/help.html:380
msgid "Expense Features"
msgstr ""

#: app/templates/main/help.html:382
msgid "Categorize expenses (travel, meals, supplies, etc.)"
msgstr ""

#: app/templates/main/help.html:383
msgid "Attach receipt images and documents"
msgstr ""

#: app/templates/main/help.html:384
msgid "Track amounts, tax, and payment methods"
msgstr ""

#: app/templates/main/help.html:385
msgid "Approval workflow for expense requests"
msgstr ""

#: app/templates/main/help.html:389
msgid "Billing & Reimbursement"
msgstr ""

#: app/templates/main/help.html:391
msgid "Mark expenses as billable to clients"
msgstr ""

#: app/templates/main/help.html:392
msgid "Include expenses in client invoices"
msgstr ""

#: app/templates/main/help.html:393
msgid "Track reimbursement status"
msgstr ""

#: app/templates/main/help.html:394
msgid "Link expenses to specific projects"
msgstr ""

#: app/templates/main/help.html:401
msgid "Record Expense"
msgstr ""

#: app/templates/main/help.html:402
msgid "Enter details and upload receipt"
msgstr ""

#: app/templates/main/help.html:406
msgid "Submit for Approval"
msgstr ""

#: app/templates/main/help.html:407
msgid "Admin reviews and approves"
msgstr ""

#: app/templates/main/help.html:411
msgid "Invoice/Reimburse"
msgstr ""

#: app/templates/main/help.html:412
msgid "Add to invoice or reimburse"
msgstr ""

#: app/templates/main/help.html:416 app/templates/main/help.html:463
msgid "Track Payment"
msgstr ""

#: app/templates/main/help.html:417
msgid "Monitor reimbursement status"
msgstr ""

#: app/templates/main/help.html:424
msgid "Professional Invoicing"
msgstr ""

#: app/templates/main/help.html:429
msgid "Professional PDF generation"
msgstr ""

#: app/templates/main/help.html:430
msgid "Company branding and logos"
msgstr ""

#: app/templates/main/help.html:431
msgid "Automatic invoice numbering"
msgstr ""

#: app/templates/main/help.html:432
msgid "Tax calculations"
msgstr ""

#: app/templates/main/help.html:436
msgid "Time Integration"
msgstr ""

#: app/templates/main/help.html:438
msgid "Generate from time entries"
msgstr ""

#: app/templates/main/help.html:439
msgid "Smart grouping by task/project"
msgstr ""

#: app/templates/main/help.html:440
msgid "Prevent double-billing"
msgstr ""

#: app/templates/main/help.html:441
msgid "Use project hourly rates"
msgstr ""

#: app/templates/main/help.html:449
msgid "Set up client and project details"
msgstr ""

#: app/templates/main/help.html:453
msgid "Add Items"
msgstr ""

#: app/templates/main/help.html:454
msgid "Generate from time or add manually"
msgstr ""

#: app/templates/main/help.html:458
msgid "Review & Send"
msgstr ""

#: app/templates/main/help.html:459
msgid "Export PDF and update status"
msgstr ""

#: app/templates/main/help.html:464
msgid "Monitor status and payments"
msgstr ""

#: app/templates/main/help.html:474
msgid "Standard Reports"
msgstr ""

#: app/templates/main/help.html:476
msgid "Project Report - Time breakdown by project"
msgstr ""

#: app/templates/main/help.html:477
msgid "User Report - Individual performance metrics"
msgstr ""

#: app/templates/main/help.html:478
msgid "Summary Report - Key metrics and trends"
msgstr ""

#: app/templates/main/help.html:479
msgid "Time Entry Report - Detailed time logs"
msgstr ""

#: app/templates/main/help.html:483
msgid "Export Options"
msgstr ""

#: app/templates/main/help.html:485
msgid "CSV Export - For external analysis"
msgstr ""

#: app/templates/main/help.html:486
msgid "Configurable delimiters"
msgstr ""

#: app/templates/main/help.html:487
msgid "Custom date ranges"
msgstr ""

#: app/templates/main/help.html:488
msgid "Filtered data export"
msgstr ""

#: app/templates/main/help.html:494
msgid "Filter Options"
msgstr ""

#: app/templates/main/help.html:496
msgid "Date Range - Custom start and end dates"
msgstr ""

#: app/templates/main/help.html:497
msgid "Project - Filter by specific projects"
msgstr ""

#: app/templates/main/help.html:498
msgid "User - Filter by team members"
msgstr ""

#: app/templates/main/help.html:499
msgid "Client - Filter by client organization"
msgstr ""

#: app/templates/main/help.html:500
msgid "Saved Filters - Save frequently used filters"
msgstr ""

#: app/templates/main/help.html:504
msgid "Visual Analytics"
msgstr ""

#: app/templates/main/help.html:506
msgid "Interactive bar charts"
msgstr ""

#: app/templates/main/help.html:507
msgid "Time distribution pie charts"
msgstr ""

#: app/templates/main/help.html:508
msgid "Trend analysis over time"
msgstr ""

#: app/templates/main/help.html:509
msgid "Mobile-optimized charts"
msgstr ""

#: app/templates/main/help.html:515
msgid "Use Saved Filters to quickly access your most common report views. Save filters for weekly reviews, monthly billing, or specific project tracking!"
msgstr ""

#: app/templates/main/help.html:522
msgid "Boost your efficiency with keyboard shortcuts, command palette, and automation features."
msgstr ""

#: app/templates/main/help.html:525
msgid "Command Palette"
msgstr ""

#: app/templates/main/help.html:526
msgid "Access any feature instantly without leaving the keyboard"
msgstr ""

#: app/templates/main/help.html:529
msgid "Opening the Command Palette"
msgstr ""

#: app/templates/main/help.html:531
msgid "Press the question mark key"
msgstr ""

#: app/templates/main/help.html:532
msgid "Quick search"
msgstr ""

#: app/templates/main/help.html:539
msgid "Go to Projects"
msgstr ""

#: app/templates/main/help.html:540
msgid "Go to Tasks"
msgstr ""

#: app/templates/main/help.html:541
msgid "New Time Entry"
msgstr ""

#: app/templates/main/help.html:549 app/templates/timer/calendar.html:271
msgid "Keyboard Shortcuts"
msgstr ""

#: app/templates/main/help.html:550
msgid "Navigate faster with keyboard-driven commands. Press Shift+? to see all shortcuts."
msgstr ""

#: app/templates/main/help.html:553
msgid "Global Search"
msgstr ""

#: app/templates/main/help.html:554
msgid "Quickly find projects, tasks, clients, and time entries from anywhere in the app."
msgstr ""

#: app/templates/main/help.html:557
msgid "Email Notifications"
msgstr ""

#: app/templates/main/help.html:558
msgid "Get notified about task assignments, overdue invoices, and weekly summaries via email."
msgstr ""

#: app/templates/main/help.html:566
msgid "Administrator Features"
msgstr ""

#: app/templates/main/help.html:571
msgid "Create new users with flexible authentication"
msgstr ""

#: app/templates/main/help.html:572
msgid "Assign custom roles with specific permissions"
msgstr ""

#: app/templates/main/help.html:573
msgid "Activate/deactivate user accounts"
msgstr ""

#: app/templates/main/help.html:574
msgid "View user statistics and activity"
msgstr ""

#: app/templates/main/help.html:575
msgid "Generate API tokens for users"
msgstr ""

#: app/templates/main/help.html:579
msgid "Access Control"
msgstr ""

#: app/templates/main/help.html:581
msgid "Granular role-based permissions system"
msgstr ""

#: app/templates/main/help.html:582
msgid "Custom roles with fine-grained access"
msgstr ""

#: app/templates/main/help.html:583
msgid "User data access controls"
msgstr ""

#: app/templates/main/help.html:584
msgid "OIDC/SSO integration (Azure AD, Authelia, etc.)"
msgstr ""

#: app/templates/main/help.html:585
msgid "API token management for integrations"
msgstr ""

#: app/templates/main/help.html:591
msgid "Authentication Methods"
msgstr ""

#: app/templates/main/help.html:593
msgid "Username-only (simple internal use)"
msgstr ""

#: app/templates/main/help.html:594
msgid "OIDC/SSO (enterprise authentication)"
msgstr ""

#: app/templates/main/help.html:595
msgid "Both methods simultaneously"
msgstr ""

#: app/templates/main/help.html:596
msgid "Automatic role assignment via groups"
msgstr ""

#: app/templates/main/help.html:600
msgid "Role & Permission Management"
msgstr ""

#: app/templates/main/help.html:602
msgid "Create custom roles beyond Admin/User"
msgstr ""

#: app/templates/main/help.html:603
msgid "Set granular permissions per feature"
msgstr ""

#: app/templates/main/help.html:604
msgid "Assign users to multiple roles"
msgstr ""

#: app/templates/main/help.html:605
msgid "View and manage all permissions"
msgstr ""

#: app/templates/main/help.html:611
msgid "General Settings"
msgstr ""

#: app/templates/main/help.html:613
msgid "Timezone and locale settings"
msgstr ""

#: app/templates/main/help.html:614
msgid "Currency configuration"
msgstr ""

#: app/templates/main/help.html:615
msgid "Time rounding rules"
msgstr ""

#: app/templates/main/help.html:616
msgid "Self-registration settings"
msgstr ""

#: app/templates/main/help.html:620
msgid "Timer Settings"
msgstr ""

#: app/templates/main/help.html:622
msgid "Idle timeout configuration"
msgstr ""

#: app/templates/main/help.html:623
msgid "Single active timer mode"
msgstr ""

#: app/templates/main/help.html:624
msgid "Timer display preferences"
msgstr ""

#: app/templates/main/help.html:625
msgid "Notification settings"
msgstr ""

#: app/templates/main/help.html:631
msgid "Database Management"
msgstr ""

#: app/templates/main/help.html:633
msgid "Create manual database backups"
msgstr ""

#: app/templates/main/help.html:634
msgid "View database migration status"
msgstr ""

#: app/templates/main/help.html:635
msgid "Monitor database performance"
msgstr ""

#: app/templates/main/help.html:636
msgid "Clean up old data and logs"
msgstr ""

#: app/templates/main/help.html:640
msgid "System Monitoring"
msgstr ""

#: app/templates/main/help.html:642
msgid "View system information and health"
msgstr ""

#: app/templates/main/help.html:643
msgid "Monitor application performance"
msgstr ""

#: app/templates/main/help.html:644
msgid "Review system logs and errors"
msgstr ""

#: app/templates/main/help.html:656
msgid "Mobile-Friendly Features"
msgstr ""

#: app/templates/main/help.html:658
msgid "Optimized for phones and tablets"
msgstr ""

#: app/templates/main/help.html:659
msgid "Touch-friendly interface"
msgstr ""

#: app/templates/main/help.html:660
msgid "Adaptive layouts for all screen sizes"
msgstr ""

#: app/templates/main/help.html:661
msgid "High contrast for outdoor visibility"
msgstr ""

#: app/templates/main/help.html:665
msgid "Mobile Navigation"
msgstr ""

#: app/templates/main/help.html:667
msgid "Bottom tab bar for easy access"
msgstr ""

#: app/templates/main/help.html:668
msgid "Quick access to dashboard"
msgstr ""

#: app/templates/main/help.html:669
msgid "One-tap time logging"
msgstr ""

#: app/templates/main/help.html:670
msgid "Mobile-optimized reports"
msgstr ""

#: app/templates/main/help.html:676
msgid "Installation"
msgstr ""

#: app/templates/main/help.html:678
msgid "Open TimeTracker in your mobile browser"
msgstr ""

#: app/templates/main/help.html:679
msgid "Look for \"Add to Home Screen\" option"
msgstr ""

#: app/templates/main/help.html:680
msgid "Follow browser-specific installation prompts"
msgstr ""

#: app/templates/main/help.html:681
msgid "Launch from your home screen like a native app"
msgstr ""

#: app/templates/main/help.html:685
msgid "PWA Benefits"
msgstr ""

#: app/templates/main/help.html:687
msgid "Offline capability for basic functions"
msgstr ""

#: app/templates/main/help.html:688
msgid "Faster loading times"
msgstr ""

#: app/templates/main/help.html:689
msgid "Native app-like experience"
msgstr ""

#: app/templates/main/help.html:690
msgid "Push notifications (where supported)"
msgstr ""

#: app/templates/main/help.html:699
msgid "TimeTracker provides a REST API for integration with other tools, mobile apps, and custom workflows."
msgstr ""

#: app/templates/main/help.html:701
msgid "Interactive Swagger UI at"
msgstr ""

#: app/templates/main/help.html:702
msgid "OpenAPI 3.0 specification at"
msgstr ""

#: app/templates/main/help.html:703
msgid "Bearer token or X-API-Key authentication"
msgstr ""

#: app/templates/main/help.html:704
msgid "Projects, time entries, tasks, clients, invoices, and more"
msgstr ""

#: app/templates/main/help.html:707
msgid "Open API Documentation"
msgstr ""

#: app/templates/main/help.html:713
msgid "Troubleshooting & FAQ"
msgstr ""

#: app/templates/main/help.html:716
msgid "What happens if I forget to stop my timer?"
msgstr ""

#: app/templates/main/help.html:717
msgid "The timer will continue running until you stop it manually. You can see your active timer on the dashboard and timer page. The timer persists even if you close your browser or restart your device. If idle detection is enabled, the timer may pause automatically after the configured timeout period."
msgstr ""

#: app/templates/main/help.html:720
msgid "Can I edit time entries after they're created?"
msgstr ""

#: app/templates/main/help.html:721
msgid "Yes, you can edit any time entry by clicking the edit button in the time entry list. You can modify the project, start/end times, notes, tags, billable status, and task assignment. Admins can edit all time entries, while regular users can only edit their own entries."
msgstr ""

#: app/templates/main/help.html:724
msgid "How do I track time for multiple projects?"
msgstr ""

#: app/templates/main/help.html:725
msgid "By default, you can only have one active timer at a time. To switch projects, stop your current timer and start a new one for the different project. Alternatively, you can create manual time entries for past work or configure the system to allow multiple active timers (admin setting)."
msgstr ""

#: app/templates/main/help.html:728
msgid "How do I export my time data?"
msgstr ""

#: app/templates/main/help.html:729
msgid "Go to the Reports page and use the \"Export CSV\" feature. You can apply filters to export specific data, or export all time entries. The CSV file includes all time entry details and can be opened in Excel or other spreadsheet applications. You can also configure the delimiter for different regional standards."
msgstr ""

#: app/templates/main/help.html:732
msgid "What's the difference between billable and non-billable time?"
msgstr ""

#: app/templates/main/help.html:733
msgid "Billable time is tracked for client billing purposes and can have an hourly rate associated with it. Non-billable time is for internal work that doesn't get charged to clients. You can mark individual time entries as billable or non-billable, and projects can have default billable settings. This distinction is crucial for accurate invoicing and profitability analysis."
msgstr ""

#: app/templates/main/help.html:736
msgid "How do I create an invoice from my time entries?"
msgstr ""

#: app/templates/main/help.html:737
msgid "Navigate to Invoices → Create Invoice, set up the client and project details, then use \"Generate from Time Entries\" to automatically create invoice items from your tracked time. You can filter by date range and project, and the system will group time entries intelligently. Review the generated items and export as a professional PDF."
msgstr ""

#: app/templates/main/help.html:740
msgid "Can I use TimeTracker on my mobile device?"
msgstr ""

#: app/templates/main/help.html:741
msgid "Yes! TimeTracker is fully responsive and works great on mobile devices. You can install it as a Progressive Web App (PWA) for a native-like experience. The mobile interface includes a bottom tab bar for easy navigation and touch-optimized controls for time tracking on the go."
msgstr ""

#: app/templates/main/help.html:744
msgid "How do I use the command palette and keyboard shortcuts?"
msgstr ""

#: app/templates/main/help.html:745
msgid "Press the question mark key (?) to open the command palette. From there, you can type to search for any action or navigation target. Use keyboard sequences like \"g d\" for Dashboard, \"g p\" for Projects, or \"n e\" for New Entry. Press Shift+? to see all available shortcuts. Press Ctrl+K (or Cmd+K on Mac) for quick search."
msgstr ""

#: app/templates/main/help.html:748
msgid "How do I create bulk time entries for multiple days?"
msgstr ""

#: app/templates/main/help.html:749
msgid "Navigate to Work → Bulk Time Entry. Select your project, choose a date range, set your daily start and end times, and optionally skip weekends. The system will create identical time entries for each day in the range. This is perfect for logging regular work patterns or filling in past time when you worked consistent hours."
msgstr ""

#: app/templates/main/help.html:752
msgid "What are time entry templates and how do I use them?"
msgstr ""

#: app/templates/main/help.html:753
msgid "Time entry templates let you save frequently used time entry configurations. When creating a manual time entry, check \"Save as Template\" to save the project, task, and notes. Later, when creating new entries, you can select a template to quickly fill in these details. Templates are personal and only visible to you."
msgstr ""

#: app/templates/main/help.html:756
msgid "How do I track expenses and add them to invoices?"
msgstr ""

#: app/templates/main/help.html:757
msgid "Go to Expenses → New Expense to record business expenses. Upload receipt images, categorize the expense, and mark it as billable if needed. When creating invoices, you can include these expenses as line items. Expenses support approval workflows, reimbursement tracking, and can be linked to specific projects."
msgstr ""

#: app/templates/main/help.html:760
msgid "Can I use Markdown in descriptions?"
msgstr ""

#: app/templates/main/help.html:761
msgid "Yes! Project and task descriptions support full Markdown formatting. You can use bold, italic, headings, lists, links, code blocks, tables, and images. This allows you to create rich, well-formatted documentation directly in your projects and tasks. The Markdown editor includes a preview mode and supports dark theme."
msgstr ""

#: app/templates/main/help.html:764
msgid "Where can I get additional help?"
msgstr ""

#: app/templates/main/help.html:768
msgid "This help page covers most common questions and features. For complete documentation:"
msgstr ""

#: app/templates/main/help.html:770
msgid "Complete Documentation Index"
msgstr ""

#: app/templates/main/help.html:771
msgid "Getting Started Guide"
msgstr ""

#: app/templates/main/help.html:772
msgid "Product Overview & Features"
msgstr ""

#: app/templates/main/help.html:773
msgid "Changelog"
msgstr ""

#: app/templates/main/help.html:778
msgid "Report issues and request features on"
msgstr ""

#: app/templates/main/help.html:783
msgid "As an admin, you can access additional system information and diagnostics in the"
msgstr ""

#: app/templates/main/help.html:783
msgid "section."
msgstr ""

#: app/templates/main/help.html:785
msgid "Admin documentation:"
msgstr ""

#: app/templates/main/help.html:785
msgid "Administrator Guide"
msgstr ""

#: app/templates/main/help.html:795
msgid "Still Need Help?"
msgstr ""

#: app/templates/main/help.html:796
msgid "Can't find what you're looking for? Here are additional resources:"
msgstr ""

#: app/templates/main/help.html:801
msgid "Complete Documentation"
msgstr ""

#: app/templates/main/help.html:805
msgid "Documentation Index"
msgstr ""

#: app/templates/main/help.html:808
msgid "Getting Started"
msgstr ""

#: app/templates/main/help.html:811
msgid "Feature Guides"
msgstr ""

#: app/templates/main/help.html:815
msgid "Admin Documentation"
msgstr ""

#: app/templates/main/help.html:829
msgid "GitHub Repository"
msgstr ""

#: app/templates/main/help.html:832
msgid "Report Issue"
msgstr ""

#: app/templates/main/help.html:843
msgid "Donations and licenses fund development; nothing is paywalled."
msgstr ""

#: app/templates/main/help.html:844 app/templates/reports/index.html:21
msgid "Open support"
msgstr ""

#: app/templates/main/search.html:11
msgid "Search Results"
msgstr ""

#: app/templates/main/search.html:14
msgid "Search notes or tags"
msgstr ""

#: app/templates/main/search.html:25
msgid "Results"
msgstr ""

#: app/templates/main/search.html:75
msgid "Are you sure you want to delete this time entry? This action cannot be undone."
msgstr ""

#: app/templates/main/search.html:115
msgid "No results found"
msgstr ""

#: app/templates/main/search.html:116
msgid "Try a different query or check your spelling."
msgstr ""

#: app/templates/mileage/form.html:56
msgid "e.g., Client meeting, Site visit"
msgstr ""

#: app/templates/mileage/form.html:65
msgid "Additional details..."
msgstr ""

#: app/templates/mileage/form.html:84
msgid "e.g., Office, Home"
msgstr ""

#: app/templates/mileage/form.html:94
msgid "e.g., Client site, Airport"
msgstr ""

#: app/templates/mileage/form.html:125
msgid "e.g., 12345"
msgstr ""

#: app/templates/mileage/form.html:135
msgid "e.g., 12400"
msgstr ""

#: app/templates/mileage/form.html:185
msgid "e.g., VW Golf"
msgstr ""

#: app/templates/mileage/form.html:195
msgid "e.g., ABC-123"
msgstr ""

#: app/templates/mileage/gps.html:2 app/templates/mileage/gps.html:7
msgid "GPS Mileage Tracking"
msgstr ""

#: app/templates/mileage/gps.html:8
msgid "Back to Mileage"
msgstr ""

#: app/templates/mileage/gps.html:13
msgid "Use your device GPS to record route points, calculate distance, and convert the track into an expense."
msgstr ""

#: app/templates/mileage/gps.html:27
msgid "Rate per km"
msgstr ""

#: app/templates/mileage/gps.html:37
msgid "Add Point"
msgstr ""

#: app/templates/mileage/gps.html:38
msgid "Create Expense from Track"
msgstr ""

#: app/templates/mileage/gps.html:43
msgid "Track ID"
msgstr ""

#: app/templates/mileage/gps.html:44 app/templates/mileage/gps.html:82
msgid "Idle"
msgstr ""

#: app/templates/mileage/gps.html:47
msgid "Distance (km)"
msgstr ""

#: app/templates/mileage/gps.html:48
msgid "Distance (miles)"
msgstr ""

#: app/templates/mileage/gps.html:82
msgid "Tracking"
msgstr ""

#: app/templates/mileage/gps.html:125
msgid "GPS tracking started"
msgstr ""

#: app/templates/mileage/gps.html:136
msgid "Track point added"
msgstr ""

#: app/templates/mileage/gps.html:151
msgid "GPS tracking stopped"
msgstr ""

#: app/templates/mileage/gps.html:165
msgid "Expense created"
msgstr ""

#: app/templates/mileage/list.html:59
msgid "Filter Mileage"
msgstr ""

#: app/templates/mileage/list.html:61 app/templates/per_diem/list.html:49
#: app/templates/timer/time_entries_overview.html:33
msgid "Exports use current filters"
msgstr ""

#: app/templates/mileage/list.html:78
msgid "Purpose, location..."
msgstr ""

#: app/templates/mileage/view.html:247
msgid "Optional approval notes..."
msgstr ""

#: app/templates/mileage/view.html:256 app/templates/per_diem/view.html:103
msgid "Rejection reason (required)"
msgstr ""

#: app/templates/partials/_bottom_nav.html:24
msgid "More navigation"
msgstr ""

#: app/templates/partials/_bottom_nav.html:59
msgid "Main"
msgstr ""

#: app/templates/partials/_command_palette.html:40
msgid "Type a command or search..."
msgstr ""

#: app/templates/payment_gateways/create.html:3
#: app/templates/payment_gateways/create.html:8
msgid "Configure Payment Gateway"
msgstr ""

#: app/templates/payment_gateways/create.html:9
msgid "Set up payment processing for online invoice payments"
msgstr ""

#: app/templates/payment_gateways/create.html:11
msgid "Back to Gateways"
msgstr ""

#: app/templates/payment_gateways/create.html:20
msgid "Gateway Name"
msgstr ""

#: app/templates/payment_gateways/create.html:21
msgid "e.g., Stripe Production"
msgstr ""

#: app/templates/payment_gateways/create.html:22
msgid "A descriptive name for this gateway configuration"
msgstr ""

#: app/templates/payment_gateways/create.html:28
msgid "Select provider..."
msgstr ""

#: app/templates/payment_gateways/create.html:36
msgid "Stripe Configuration"
msgstr ""

#: app/templates/payment_gateways/create.html:41
msgid "Your Stripe secret key"
msgstr ""

#: app/templates/payment_gateways/create.html:44
msgid "Publishable Key"
msgstr ""

#: app/templates/payment_gateways/create.html:46
msgid "Your Stripe publishable key"
msgstr ""

#: app/templates/payment_gateways/create.html:51
msgid "Webhook signing secret for verifying webhook events"
msgstr ""

#: app/templates/payment_gateways/create.html:57
msgid "PayPal Configuration"
msgstr ""

#: app/templates/payment_gateways/create.html:73
#: app/templates/payment_gateways/list.html:50
msgid "Test Mode"
msgstr ""

#: app/templates/payment_gateways/create.html:75
msgid "Enable test mode for development and testing"
msgstr ""

#: app/templates/payment_gateways/create.html:80
msgid "Save Gateway"
msgstr ""

#: app/templates/payment_gateways/list.html:28
#: app/templates/payment_gateways/list.html:48
msgid "Mode"
msgstr ""

#: app/templates/payment_gateways/list.html:52
msgid "Production"
msgstr ""

#: app/templates/payment_gateways/list.html:70
msgid "Add Gateway"
msgstr ""

#: app/templates/payment_gateways/list.html:74
msgid "No Payment Gateways"
msgstr ""

#: app/templates/payment_gateways/list.html:75
msgid "Configure a payment gateway to enable online invoice payments."
msgstr ""

#: app/templates/payment_gateways/pay.html:15
msgid "Amount Due"
msgstr ""

#: app/templates/payment_gateways/pay.html:31
msgid "You will be redirected to a secure payment page to complete your payment."
msgstr ""

#: app/templates/payment_gateways/pay.html:37
msgid "Continue to Payment"
msgstr ""

#: app/templates/payment_gateways/pay.html:46
msgid "Payment gateway not yet supported. Please contact support."
msgstr ""

#: app/templates/payments/create.html:7
msgid "Record New Payment"
msgstr ""

#: app/templates/payments/list.html:24 app/templates/reports/index.html:38
msgid "Total Payments"
msgstr ""

#: app/templates/payments/list.html:37 app/templates/reports/index.html:54
msgid "Gateway Fees"
msgstr ""

#: app/templates/payments/list.html:45
msgid "Filter Payments"
msgstr ""

#: app/templates/payments/list.html:141
msgid "ID"
msgstr ""

#: app/templates/payments/list.html:222
msgid "Delete Selected Payments"
msgstr ""

#: app/templates/payments/list.html:242
msgid "Change Status for Selected Payments"
msgstr ""

#: app/templates/payments/view.html:151
msgid "Related Invoice"
msgstr ""

#: app/templates/per_diem/form.html:35
msgid "e.g., Business trip to Berlin"
msgstr ""

#: app/templates/per_diem/form.html:63 app/templates/per_diem/rate_form.html:41
msgid "e.g., DE, US, GB"
msgstr ""

#: app/templates/per_diem/form.html:74 app/templates/per_diem/rate_form.html:52
msgid "e.g., Berlin"
msgstr ""

#: app/templates/per_diem/list.html:47
msgid "Filter Claims"
msgstr ""

#: app/templates/per_diem/list.html:152
msgid "Delete Selected Claims"
msgstr ""

#: app/templates/per_diem/list.html:172
msgid "Change Status for Selected Claims"
msgstr ""

#: app/templates/per_diem/rate_form.html:162
msgid "Additional notes about this rate..."
msgstr ""

#: app/templates/per_diem/rates_list.html:110
#: app/templates/per_diem/rates_list.html:121
msgid "Are you sure you want to delete this per diem rate?"
msgstr ""

#: app/templates/per_diem/rates_list.html:111
msgid "Delete Per Diem Rate"
msgstr ""

#: app/templates/project_templates/create.html:3
#: app/templates/project_templates/create.html:8
msgid "Create Project Template"
msgstr ""

#: app/templates/project_templates/create.html:9
msgid "Create a reusable template for quick project setup"
msgstr ""

#: app/templates/project_templates/create.html:11
msgid "Back to Templates"
msgstr ""

#: app/templates/project_templates/create.html:21
msgid "e.g., Web Development Project"
msgstr ""

#: app/templates/project_templates/create.html:26
msgid "Describe what this template is used for..."
msgstr ""

#: app/templates/project_templates/create.html:31
msgid "e.g., Web Development, Marketing"
msgstr ""

#: app/templates/project_templates/create.html:36
#: app/templates/timer/calendar.html:193
msgid "Comma-separated tags"
msgstr ""

#: app/templates/project_templates/create.html:41
#: app/templates/project_templates/edit.html:41
#: app/templates/project_templates/view.html:36
msgid "Project Configuration"
msgstr ""

#: app/templates/project_templates/create.html:47
#: app/templates/project_templates/edit.html:47
#: app/templates/projects/create.html:66
msgid "Billable Project"
msgstr ""

#: app/templates/project_templates/create.html:57
#: app/templates/project_templates/create.html:87
#: app/templates/project_templates/edit.html:57
#: app/templates/project_templates/edit.html:90
#: app/templates/project_templates/edit.html:116
#: app/templates/project_templates/view.html:50
#: app/templates/recurring_tasks/form.html:101
#: app/templates/tasks/create.html:98 app/templates/tasks/edit.html:106
msgid "Estimated Hours"
msgstr ""

#: app/templates/project_templates/create.html:62
#: app/templates/project_templates/edit.html:62
#: app/templates/project_templates/view.html:56
#: app/templates/projects/create.html:85 app/templates/projects/edit.html:78
msgid "Budget Amount"
msgstr ""

#: app/templates/project_templates/create.html:69
#: app/templates/project_templates/create_project.html:48
#: app/templates/project_templates/edit.html:69
#: app/templates/project_templates/view.html:65
msgid "Template Tasks"
msgstr ""

#: app/templates/project_templates/create.html:70
#: app/templates/project_templates/edit.html:70
msgid "Tasks will be created when a project is created from this template"
msgstr ""

#: app/templates/project_templates/create.html:75
#: app/templates/project_templates/edit.html:78
#: app/templates/project_templates/edit.html:104
#: app/templates/tasks/create.html:26 app/templates/tasks/edit.html:31
msgid "Task Name"
msgstr ""

#: app/templates/project_templates/create.html:94
#: app/templates/project_templates/edit.html:124
msgid "Add Task"
msgstr ""

#: app/templates/project_templates/create.html:101
#: app/templates/project_templates/edit.html:131
msgid "Make this template public (visible to all users)"
msgstr ""

#: app/templates/project_templates/create_project.html:4
#: app/templates/project_templates/create_project.html:9
msgid "Create Project from Template"
msgstr ""

#: app/templates/project_templates/create_project.html:10
msgid "Using template:"
msgstr ""

#: app/templates/project_templates/create_project.html:12
#: app/templates/project_templates/edit.html:11
msgid "Back to Template"
msgstr ""

#: app/templates/project_templates/create_project.html:28
msgid "Leave empty to use template name"
msgstr ""

#: app/templates/project_templates/create_project.html:33
msgid "Override Settings (Optional)"
msgstr ""

#: app/templates/project_templates/create_project.html:40
#: app/templates/projects/create.html:27 app/templates/projects/edit.html:26
#: app/templates/projects/view.html:104
msgid "Project Code"
msgstr ""

#: app/templates/project_templates/create_project.html:49
msgid "The following tasks will be created:"
msgstr ""

#: app/templates/project_templates/create_project.html:67
#: app/templates/project_templates/list.html:85
#: app/templates/project_templates/view.html:21
#: app/templates/projects/create.html:3 app/templates/projects/create.html:8
#: app/templates/projects/create.html:138 app/templates/quotes/accept.html:41
msgid "Create Project"
msgstr ""

#: app/templates/project_templates/edit.html:3
#: app/templates/project_templates/edit.html:8
msgid "Edit Project Template"
msgstr ""

#: app/templates/project_templates/edit.html:94
#: app/templates/project_templates/edit.html:162
msgid "Remove Task"
msgstr ""

#: app/templates/project_templates/list.html:33
msgid "Show Public Templates"
msgstr ""

#: app/templates/project_templates/list.html:74
msgid "uses"
msgstr ""

#: app/templates/project_templates/list.html:78
#: app/templates/project_templates/view.html:11
#: app/templates/reports/builder.html:189
msgid "Public"
msgstr ""

#: app/templates/project_templates/list.html:124
msgid "No Templates Found"
msgstr ""

#: app/templates/project_templates/list.html:125
msgid "Create your first project template to quickly set up new projects with pre-configured settings and tasks."
msgstr ""

#: app/templates/project_templates/view.html:3
msgid "Project Template"
msgstr ""

#: app/templates/project_templates/view.html:91
msgid "Template Info"
msgstr ""

#: app/templates/project_templates/view.html:98
msgid "Usage Count"
msgstr ""

#: app/templates/project_templates/view.html:103
msgid "Last Used"
msgstr ""

#: app/templates/projects/_kanban_tailwind.html:4
msgid "Kanban board columns"
msgstr ""

#: app/templates/projects/_kanban_tailwind.html:16
msgid "Add task to this column"
msgstr ""

#: app/templates/projects/_kanban_tailwind.html:20
msgid "Edit swimlane"
msgstr ""

#: app/templates/projects/_kanban_tailwind.html:26
msgid "Column"
msgstr ""

#: app/templates/projects/_projects_list.html:9
#: app/templates/projects/list.html:90
msgid "List View"
msgstr ""

#: app/templates/projects/_projects_list.html:12
#: app/templates/projects/list.html:93
msgid "Grid View"
msgstr ""

#: app/templates/projects/_projects_list.html:102
#: app/templates/projects/list.html:183
msgid "Rate"
msgstr ""

#: app/templates/projects/_projects_list.html:152
#: app/templates/projects/edit.html:3 app/templates/projects/edit.html:8
#: app/templates/projects/list.html:234 app/templates/projects/view.html:18
msgid "Edit Project"
msgstr ""

#: app/templates/projects/add_cost.html:3
#: app/templates/projects/add_cost.html:13
#: app/templates/projects/add_cost.html:101
msgid "Add Cost"
msgstr ""

#: app/templates/projects/add_cost.html:20
msgid "Add Cost to Project"
msgstr ""

#: app/templates/projects/add_cost.html:30
#: app/templates/projects/edit_cost.html:37
msgid "e.g., Travel expenses to client site"
msgstr ""

#: app/templates/projects/add_cost.html:31
#: app/templates/projects/edit_cost.html:38
msgid "Brief description of the cost"
msgstr ""

#: app/templates/projects/add_cost.html:39
#: app/templates/projects/edit_cost.html:46
msgid "Select category"
msgstr ""

#: app/templates/projects/add_cost.html:41
#: app/templates/projects/edit_cost.html:48
msgid "Materials"
msgstr ""

#: app/templates/projects/add_cost.html:44
#: app/templates/projects/edit_cost.html:51
msgid "Software/Licenses"
msgstr ""

#: app/templates/projects/add_cost.html:78
#: app/templates/projects/edit_cost.html:85
msgid "Additional details about this cost"
msgstr ""

#: app/templates/projects/add_cost.html:87
#: app/templates/projects/edit_cost.html:94
msgid "Billable to client"
msgstr ""

#: app/templates/projects/add_cost.html:90
#: app/templates/projects/edit_cost.html:97
msgid "If checked, this cost will be included in invoices"
msgstr ""

#: app/templates/projects/add_good.html:6
msgid "Add Extra Good"
msgstr ""

#: app/templates/projects/add_good.html:7
msgid "Add a product or service to"
msgstr ""

#: app/templates/projects/add_good.html:9
#: app/templates/projects/dashboard.html:9 app/templates/projects/edit.html:11
#: app/templates/projects/edit_good.html:9 app/templates/projects/goods.html:10
#: app/templates/projects/time_entries_overview.html:18
msgid "Back to Project"
msgstr ""

#: app/templates/projects/add_good.html:40
#: app/templates/projects/edit_good.html:40
msgid "SKU/Product Code"
msgstr ""

#: app/templates/projects/archive.html:24
msgid "What happens when you archive a project?"
msgstr ""

#: app/templates/projects/archive.html:26
msgid "The project will be hidden from active project lists"
msgstr ""

#: app/templates/projects/archive.html:27
msgid "No new time entries can be added to this project"
msgstr ""

#: app/templates/projects/archive.html:28
msgid "Existing data and time entries are preserved"
msgstr ""

#: app/templates/projects/archive.html:29
msgid "You can unarchive the project later if needed"
msgstr ""

#: app/templates/projects/archive.html:41
msgid "Reason for Archiving"
msgstr ""

#: app/templates/projects/archive.html:48
msgid "e.g., Project completed, Client contract ended, Project cancelled, etc."
msgstr ""

#: app/templates/projects/archive.html:51
msgid "Adding a reason helps with project organization and future reference."
msgstr ""

#: app/templates/projects/archive.html:58
msgid "Quick Select"
msgstr ""

#: app/templates/projects/archive.html:61
msgid "Project completed successfully"
msgstr ""

#: app/templates/projects/archive.html:62
msgid "Project Completed"
msgstr ""

#: app/templates/projects/archive.html:64
msgid "Client contract ended"
msgstr ""

#: app/templates/projects/archive.html:65 app/templates/projects/list.html:570
msgid "Contract Ended"
msgstr ""

#: app/templates/projects/archive.html:67
msgid "Project cancelled by client"
msgstr ""

#: app/templates/projects/archive.html:70
msgid "Project on hold indefinitely"
msgstr ""

#: app/templates/projects/archive.html:71
msgid "On Hold"
msgstr ""

#: app/templates/projects/archive.html:73
msgid "Maintenance period ended"
msgstr ""

#: app/templates/projects/archive.html:74
msgid "Maintenance Ended"
msgstr ""

#: app/templates/projects/archive.html:85
msgid "Archive Project"
msgstr ""

#: app/templates/projects/create.html:9
msgid "Set up a new project to organize your work and track time effectively"
msgstr ""

#: app/templates/projects/create.html:23
msgid "Enter a descriptive project name"
msgstr ""

#: app/templates/projects/create.html:24
msgid "Choose a clear, descriptive name that explains the project scope"
msgstr ""

#: app/templates/projects/create.html:28 app/templates/projects/edit.html:27
msgid "Short code, e.g., ABC"
msgstr ""

#: app/templates/projects/create.html:29
msgid "Optional: Short tag shown on Kanban cards"
msgstr ""

#: app/templates/projects/create.html:45 app/templates/projects/edit.html:42
msgid "Create new client"
msgstr ""

#: app/templates/projects/create.html:56
msgid "Provide detailed information about the project, objectives, and deliverables..."
msgstr ""

#: app/templates/projects/create.html:59
msgid "Optional: Add context, objectives, or specific requirements for the project"
msgstr ""

#: app/templates/projects/create.html:68
msgid "Enable billing for this project"
msgstr ""

#: app/templates/projects/create.html:73 app/templates/projects/edit.html:67
msgid "Leave empty for non-billable projects"
msgstr ""

#: app/templates/projects/create.html:79
msgid "PO number, contract reference, etc."
msgstr ""

#: app/templates/projects/create.html:80
msgid "Optional: Add a reference number or identifier for billing purposes"
msgstr ""

#: app/templates/projects/create.html:86 app/templates/projects/edit.html:79
msgid "e.g. 10000.00"
msgstr ""

#: app/templates/projects/create.html:87
msgid "Optional: Set a total project budget to monitor spend"
msgstr ""

#: app/templates/projects/create.html:90 app/templates/projects/edit.html:82
msgid "Alert Threshold (%)"
msgstr ""

#: app/templates/projects/create.html:92
msgid "Notify when consumed budget exceeds this threshold"
msgstr ""

#: app/templates/projects/create.html:97 app/templates/projects/edit.html:88
#: app/templates/tasks/create.html:128 app/templates/tasks/edit.html:136
msgid "Gantt color"
msgstr ""

#: app/templates/projects/create.html:102 app/templates/projects/edit.html:93
msgid "Optional: Color for this project on the Gantt chart. Pick or enter a hex code (e.g. #3b82f6)."
msgstr ""

#: app/templates/projects/create.html:109 app/templates/projects/edit.html:100
msgid "These custom fields are defined globally and available for all projects."
msgstr ""

#: app/templates/projects/create.html:146
msgid "Project Creation Tips"
msgstr ""

#: app/templates/projects/create.html:148 app/templates/tasks/create.html:155
msgid "Clear Naming"
msgstr ""

#: app/templates/projects/create.html:148
msgid "Use descriptive names that clearly indicate the project's purpose"
msgstr ""

#: app/templates/projects/create.html:149
msgid "Billing Setup"
msgstr ""

#: app/templates/projects/create.html:149
msgid "Set appropriate hourly rates based on project complexity and client budget"
msgstr ""

#: app/templates/projects/create.html:150
msgid "Detailed Description"
msgstr ""

#: app/templates/projects/create.html:150
msgid "Include project objectives, deliverables, and key requirements"
msgstr ""

#: app/templates/projects/create.html:151
msgid "Client Selection"
msgstr ""

#: app/templates/projects/create.html:151
msgid "Choose the right client to ensure proper project organization"
msgstr ""

#: app/templates/projects/create.html:437
#: app/templates/projects/create.html:498 app/templates/reports/index.html:527
msgid "Creating..."
msgstr ""

#: app/templates/projects/create.html:517
msgid "Could not create client. Please try again."
msgstr ""

#: app/templates/projects/create.html:526
#: app/templates/projects/create.html:547
msgid "Client created"
msgstr ""

#: app/templates/projects/create.html:551
msgid "Network error while creating client"
msgstr ""

#: app/templates/projects/dashboard.html:19
msgid "Project Dashboard & Analytics"
msgstr ""

#: app/templates/projects/dashboard.html:27 app/templates/projects/view.html:13
msgid "Entries Overview"
msgstr ""

#: app/templates/projects/dashboard.html:33 app/templates/projects/view.html:41
msgid "Budget Analysis"
msgstr ""

#: app/templates/projects/dashboard.html:37
msgid "All Time"
msgstr ""

#: app/templates/projects/dashboard.html:38
msgid "Last 7 Days"
msgstr ""

#: app/templates/projects/dashboard.html:39
msgid "Last 30 Days"
msgstr ""

#: app/templates/projects/dashboard.html:40
msgid "Last 3 Months"
msgstr ""

#: app/templates/projects/dashboard.html:41
msgid "Last Year"
msgstr ""

#: app/templates/projects/dashboard.html:57
msgid "estimated"
msgstr ""

#: app/templates/projects/dashboard.html:71
#: app/templates/projects/view.html:247
msgid "Budget Used"
msgstr ""

#: app/templates/projects/dashboard.html:75
msgid "of budget"
msgstr ""

#: app/templates/projects/dashboard.html:89
msgid "Tasks Complete"
msgstr ""

#: app/templates/projects/dashboard.html:92
msgid "completion"
msgstr ""

#: app/templates/projects/dashboard.html:105
msgid "Team Members"
msgstr ""

#: app/templates/projects/dashboard.html:107
msgid "contributing"
msgstr ""

#: app/templates/projects/dashboard.html:122
msgid "Budget vs. Actual"
msgstr ""

#: app/templates/projects/dashboard.html:144
msgid "No budget set for this project"
msgstr ""

#: app/templates/projects/dashboard.html:154
msgid "Task Status Distribution"
msgstr ""

#: app/templates/projects/dashboard.html:172
msgid "No tasks created yet"
msgstr ""

#: app/templates/projects/dashboard.html:185
msgid "Team Member Contributions"
msgstr ""

#: app/templates/projects/dashboard.html:209
msgid "No time entries recorded yet"
msgstr ""

#: app/templates/projects/dashboard.html:219
msgid "Time Tracking Timeline"
msgstr ""

#: app/templates/projects/dashboard.html:229
msgid "Select a time period to view timeline"
msgstr ""

#: app/templates/projects/dashboard.html:277
msgid "Team Member Details"
msgstr ""

#: app/templates/projects/dashboard.html:294
msgid "tasks"
msgstr ""

#: app/templates/projects/dashboard.html:312
msgid "No team members have logged time yet"
msgstr ""

#: app/templates/projects/dashboard.html:325
msgid "Attention Required"
msgstr ""

#: app/templates/projects/dashboard.html:327
msgid "task(s) are overdue"
msgstr ""

#: app/templates/projects/edit_cost.html:3
#: app/templates/projects/edit_cost.html:13
#: app/templates/projects/edit_cost.html:20
msgid "Edit Cost"
msgstr ""

#: app/templates/projects/edit_cost.html:27
msgid "This cost has been invoiced. Changes may affect existing invoices."
msgstr ""

#: app/templates/projects/edit_cost.html:108
msgid "Update Cost"
msgstr ""

#: app/templates/projects/edit_good.html:6
msgid "Edit Extra Good"
msgstr ""

#: app/templates/projects/goods.html:7
msgid "Manage products and services for this project"
msgstr ""

#: app/templates/projects/goods.html:17
msgid "Total Goods"
msgstr ""

#: app/templates/projects/goods.html:25
msgid "Billable Amount"
msgstr ""

#: app/templates/projects/goods.html:29
msgid "Categories"
msgstr ""

#: app/templates/projects/goods.html:68
msgid "Invoiced"
msgstr ""

#: app/templates/projects/goods.html:72
#: app/templates/reports/week_in_review.html:34
#: app/templates/timer/time_entries_overview.html:114
#: app/templates/timer/view_timer.html:130
msgid "Non-billable"
msgstr ""

#: app/templates/projects/goods.html:81
msgid "Are you sure you want to delete this extra good?"
msgstr ""

#: app/templates/projects/goods.html:81
msgid "Delete Extra Good"
msgstr ""

#: app/templates/projects/goods.html:98
msgid "No extra goods found for this project"
msgstr ""

#: app/templates/projects/goods.html:99
msgid "Add Your First Good"
msgstr ""

#: app/templates/projects/goods.html:105
msgid "Breakdown by Category"
msgstr ""

#: app/templates/projects/goods.html:111
msgid "item(s)"
msgstr ""

#: app/templates/projects/list.html:19
msgid "Filter Projects"
msgstr ""

#: app/templates/projects/time_entries_overview.html:10
#: app/templates/projects/time_entries_overview.html:15
#: app/templates/timer/time_entries_overview.html:5
#: app/templates/timer/time_entries_overview.html:14
msgid "Time Entries Overview"
msgstr ""

#: app/templates/projects/time_entries_overview.html:24
msgid "Days"
msgstr ""

#: app/templates/projects/time_entries_overview.html:48
msgid "No time entries found for this project in the selected period."
msgstr ""

#: app/templates/projects/view.html:54
msgid "Mark project as Inactive?"
msgstr ""

#: app/templates/projects/view.html:54
msgid "Change Project Status"
msgstr ""

#: app/templates/projects/view.html:61
msgid "Activate project?"
msgstr ""

#: app/templates/projects/view.html:61
msgid "Activate Project"
msgstr ""

#: app/templates/projects/view.html:72
msgid "Archive"
msgstr ""

#: app/templates/projects/view.html:75
msgid "Unarchive project?"
msgstr ""

#: app/templates/projects/view.html:75
msgid "Unarchive Project"
msgstr ""

#: app/templates/projects/view.html:75 app/templates/projects/view.html:78
msgid "Unarchive"
msgstr ""

#: app/templates/projects/view.html:87
msgid "Delete Project"
msgstr ""

#: app/templates/projects/view.html:133
msgid "Archive Information"
msgstr ""

#: app/templates/projects/view.html:136
msgid "Archived on:"
msgstr ""

#: app/templates/projects/view.html:141
msgid "Archived by:"
msgstr ""

#: app/templates/projects/view.html:147
msgid "Reason:"
msgstr ""

#: app/templates/projects/view.html:208
msgid "Quick Links"
msgstr ""

#: app/templates/projects/view.html:230
msgid "Budget Overview"
msgstr ""

#: app/templates/projects/view.html:279
msgid "Over"
msgstr ""

#: app/templates/projects/view.html:304
msgid "View Full Budget Analysis"
msgstr ""

#: app/templates/projects/view.html:352
msgid "e.g., Contract, Specification, etc."
msgstr ""

#: app/templates/projects/view.html:424
msgid "Tasks for this project"
msgstr ""

#: app/templates/projects/view.html:431 app/templates/projects/view.html:458
#: app/templates/timer/calendar.html:854
msgid "Due"
msgstr ""

#: app/templates/projects/view.html:432 app/templates/projects/view.html:466
#: app/templates/tasks/_kanban.html:1324
#: app/templates/tasks/_tasks_list.html:36
#: app/templates/tasks/_tasks_list.html:86 app/templates/tasks/edit.html:172
#: app/templates/tasks/view.html:154
msgid "Estimated"
msgstr ""

#: app/templates/projects/view.html:485
msgid "No tasks for this project."
msgstr ""

#: app/templates/quotes/_edit_quote_form_scripts.html:16
#: app/templates/quotes/edit.html:82 app/templates/quotes/edit.html:154
#: app/templates/quotes/edit.html:212
msgid "Move up"
msgstr ""

#: app/templates/quotes/_edit_quote_form_scripts.html:17
#: app/templates/quotes/edit.html:83 app/templates/quotes/edit.html:155
#: app/templates/quotes/edit.html:213
msgid "Move down"
msgstr ""

#: app/templates/quotes/_edit_quote_form_scripts.html:166
#: app/templates/quotes/edit.html:87
msgid "Manual entry"
msgstr ""

#: app/templates/quotes/_edit_quote_form_scripts.html:167
#: app/templates/quotes/edit.html:88
msgid "From stock"
msgstr ""

#: app/templates/quotes/_quotes_list.html:12 app/templates/quotes/list.html:366
#: app/templates/quotes/view.html:24 app/templates/timer/calendar.html:236
#: app/templates/timer/edit_timer.html:389
#: app/templates/timer/edit_timer.html:510
msgid "Duplicate"
msgstr ""

#: app/templates/quotes/_quotes_list.html:13 app/templates/quotes/list.html:367
msgid "Mark as Sent"
msgstr ""

#: app/templates/quotes/_quotes_list.html:66 app/templates/quotes/list.html:83
#: app/templates/quotes/view.html:75
msgid "Accepted"
msgstr ""

#: app/templates/quotes/_quotes_list.html:88
msgid "Create Your First Quote"
msgstr ""

#: app/templates/quotes/_quotes_list.html:92
msgid "Learn More"
msgstr ""

#: app/templates/quotes/accept.html:11
msgid "Back to Quote"
msgstr ""

#: app/templates/quotes/accept.html:42
msgid "Accepting this quote will create a new project with the budget from the quote."
msgstr ""

#: app/templates/quotes/accept.html:50
msgid "The project will be created with the budget from the quote"
msgstr ""

#: app/templates/quotes/accept.html:55
msgid "Accept Quote & Create Project"
msgstr ""

#: app/templates/quotes/create.html:5 app/templates/quotes/create.html:265
msgid "Create Quote"
msgstr ""

#: app/templates/quotes/create.html:37 app/templates/quotes/edit.html:33
msgid "Quote title"
msgstr ""

#: app/templates/quotes/create.html:42 app/templates/quotes/edit.html:47
msgid "Quote description"
msgstr ""

#: app/templates/quotes/create.html:51 app/templates/quotes/edit.html:56
msgid "Quote line items"
msgstr ""

#: app/templates/quotes/create.html:54 app/templates/quotes/edit.html:59
msgid "Services, labor, and catalog lines"
msgstr ""

#: app/templates/quotes/create.html:57 app/templates/quotes/edit.html:62
msgid "Add line"
msgstr ""

#: app/templates/quotes/create.html:62 app/templates/quotes/edit.html:67
#: app/templates/quotes/edit.html:86
msgid "Line type"
msgstr ""

#: app/templates/quotes/create.html:63 app/templates/quotes/edit.html:68
msgid "Stock"
msgstr ""

#: app/templates/quotes/create.html:73 app/templates/quotes/edit.html:120
msgid "Line items subtotal"
msgstr ""

#: app/templates/quotes/create.html:83 app/templates/quotes/edit.html:131
msgid "Costs"
msgstr ""

#: app/templates/quotes/create.html:86 app/templates/quotes/edit.html:134
msgid "One-off costs (e.g. travel, materials)"
msgstr ""

#: app/templates/quotes/create.html:89 app/templates/quotes/edit.html:137
msgid "Add cost"
msgstr ""

#: app/templates/quotes/create.html:104 app/templates/quotes/edit.html:177
msgid "Costs subtotal"
msgstr ""

#: app/templates/quotes/create.html:114 app/templates/quotes/edit.html:188
msgid "Extra goods"
msgstr ""

#: app/templates/quotes/create.html:117 app/templates/quotes/edit.html:191
msgid "Products, licenses, hardware"
msgstr ""

#: app/templates/quotes/create.html:120 app/templates/quotes/edit.html:194
msgid "Add good"
msgstr ""

#: app/templates/quotes/create.html:136 app/templates/quotes/edit.html:235
msgid "Goods subtotal"
msgstr ""

#: app/templates/quotes/create.html:144 app/templates/quotes/edit.html:243
msgid "Subtotal (all quote lines)"
msgstr ""

#: app/templates/quotes/create.html:152 app/templates/quotes/edit.html:251
msgid "Financial Details"
msgstr ""

#: app/templates/quotes/create.html:182 app/templates/quotes/edit.html:281
msgid "Select payment terms"
msgstr ""

#: app/templates/quotes/create.html:183 app/templates/quotes/edit.html:282
msgid "Due on Receipt"
msgstr ""

#: app/templates/quotes/create.html:191 app/templates/quotes/edit.html:290
msgid "Or enter custom payment terms"
msgstr ""

#: app/templates/quotes/create.html:193 app/templates/quotes/edit.html:292
msgid "Use custom terms"
msgstr ""

#: app/templates/quotes/create.html:201 app/templates/quotes/edit.html:300
#: app/templates/quotes/pdf_default.html:123 app/templates/quotes/view.html:135
msgid "Discount"
msgstr ""

#: app/templates/quotes/create.html:205 app/templates/quotes/edit.html:304
msgid "Discount Type"
msgstr ""

#: app/templates/quotes/create.html:207 app/templates/quotes/edit.html:306
msgid "No Discount"
msgstr ""

#: app/templates/quotes/create.html:208 app/templates/quotes/edit.html:307
msgid "Percentage (%)"
msgstr ""

#: app/templates/quotes/create.html:209 app/templates/quotes/edit.html:308
msgid "Fixed Amount"
msgstr ""

#: app/templates/quotes/create.html:213 app/templates/quotes/edit.html:312
msgid "Discount Amount"
msgstr ""

#: app/templates/quotes/create.html:214 app/templates/quotes/edit.html:313
msgid "0.00"
msgstr ""

#: app/templates/quotes/create.html:219 app/templates/quotes/edit.html:318
msgid "Coupon Code"
msgstr ""

#: app/templates/quotes/create.html:220 app/templates/quotes/edit.html:319
msgid "Optional coupon code"
msgstr ""

#: app/templates/quotes/create.html:223 app/templates/quotes/edit.html:322
msgid "Discount Reason"
msgstr ""

#: app/templates/quotes/create.html:224 app/templates/quotes/edit.html:323
msgid "Reason for discount"
msgstr ""

#: app/templates/quotes/create.html:232
msgid "Approval Workflow"
msgstr ""

#: app/templates/quotes/create.html:237
msgid "Requires approval before sending"
msgstr ""

#: app/templates/quotes/create.html:245 app/templates/quotes/edit.html:331
msgid "Additional Information"
msgstr ""

#: app/templates/quotes/create.html:249 app/templates/quotes/edit.html:335
msgid "Internal notes (not visible to client)"
msgstr ""

#: app/templates/quotes/create.html:250 app/templates/quotes/edit.html:336
msgid "These notes are only visible to your team"
msgstr ""

#: app/templates/quotes/create.html:253 app/templates/quotes/edit.html:339
#: app/templates/quotes/view.html:171
msgid "Terms and Conditions"
msgstr ""

#: app/templates/quotes/create.html:254 app/templates/quotes/edit.html:340
msgid "Terms and conditions"
msgstr ""

#: app/templates/quotes/create.html:255 app/templates/quotes/edit.html:341
msgid "These terms will be visible to the client"
msgstr ""

#: app/templates/quotes/edit.html:4 app/templates/quotes/view.html:19
msgid "Edit Quote"
msgstr ""

#: app/templates/quotes/edit.html:41
msgid "Client cannot be changed"
msgstr ""

#: app/templates/quotes/edit.html:351
msgid "Update Quote"
msgstr ""

#: app/templates/quotes/list.html:21
msgid "Total Quotes"
msgstr ""

#: app/templates/quotes/list.html:29
msgid "Acceptance Rate"
msgstr ""

#: app/templates/quotes/list.html:33
msgid "Avg Quote Value"
msgstr ""

#: app/templates/quotes/list.html:40
msgid "Quotes by Status"
msgstr ""

#: app/templates/quotes/list.html:51
msgid "Top Clients by Quotes"
msgstr ""

#: app/templates/quotes/list.html:66
msgid "Filter Quotes"
msgstr ""

#: app/templates/quotes/list.html:75
msgid "Search quotes..."
msgstr ""

#: app/templates/quotes/list.html:366
msgid "Are you sure you want to duplicate"
msgstr ""

#: app/templates/quotes/list.html:366 app/templates/quotes/list.html:368
msgid "quote(s)?"
msgstr ""

#: app/templates/quotes/list.html:367
msgid "Are you sure you want to mark"
msgstr ""

#: app/templates/quotes/list.html:367
msgid "quote(s) as sent?"
msgstr ""

#: app/templates/quotes/pdf_default.html:54
#: app/utils/pdf_generator_fallback.py:531
msgid "QUOTE"
msgstr ""

#: app/templates/quotes/pdf_default.html:56
msgid "Quote #"
msgstr ""

#: app/templates/quotes/pdf_default.html:68
msgid "Quote For"
msgstr ""

#: app/templates/quotes/pdf_default.html:134
msgid "Subtotal After Discount:"
msgstr ""

#: app/templates/quotes/pdf_default.html:156
#: app/utils/pdf_generator_fallback.py:647
msgid "Description:"
msgstr ""

#: app/templates/quotes/view.html:149
msgid "Subtotal After Discount"
msgstr ""

#: app/templates/quotes/view.html:198
msgid "Approval not yet requested"
msgstr ""

#: app/templates/quotes/view.html:206
msgid "Pending approval"
msgstr ""

#: app/templates/quotes/view.html:222
msgid "Rejected by"
msgstr ""

#: app/templates/quotes/view.html:233
msgid "Request Approval Again"
msgstr ""

#: app/templates/quotes/view.html:243
msgid "Send Quote"
msgstr ""

#: app/templates/quotes/view.html:252
msgid "Are you sure you want to reject this quote?"
msgstr ""

#: app/templates/quotes/view.html:261 app/templates/quotes/view.html:578
msgid "Delete Quote"
msgstr ""

#: app/templates/quotes/view.html:296
msgid "Internal comment (not visible to client)"
msgstr ""

#: app/templates/quotes/view.html:320 app/templates/quotes/view.html:347
#: app/templates/quotes/view.html:380
msgid "Internal"
msgstr ""

#: app/templates/quotes/view.html:329 app/templates/quotes/view.html:354
msgid "Are you sure you want to delete this comment?"
msgstr ""

#: app/templates/quotes/view.html:376
msgid "Write a reply..."
msgstr ""

#: app/templates/quotes/view.html:395
msgid "No comments yet. Start the conversation by adding the first comment."
msgstr ""

#: app/templates/quotes/view.html:424
msgid "Sent At"
msgstr ""

#: app/templates/quotes/view.html:430
msgid "Accepted At"
msgstr ""

#: app/templates/quotes/view.html:445
msgid "Send Quote via Email"
msgstr ""

#: app/templates/quotes/view.html:453
msgid "Recipient Email"
msgstr ""

#: app/templates/quotes/view.html:461
#, python-format
msgid "Quote %(quote_number)s"
msgstr ""

#: app/templates/quotes/view.html:465
msgid "Custom Message (Optional)"
msgstr ""

#: app/templates/quotes/view.html:468
msgid "Add a custom message to the email..."
msgstr ""

#: app/templates/quotes/view.html:472
msgid "Attach PDF"
msgstr ""

#: app/templates/quotes/view.html:542
msgid "Approve Quote"
msgstr ""

#: app/templates/quotes/view.html:546
msgid "Notes (Optional)"
msgstr ""

#: app/templates/quotes/view.html:547
msgid "Add approval notes..."
msgstr ""

#: app/templates/quotes/view.html:560
msgid "Reject Quote Approval"
msgstr ""

#: app/templates/quotes/view.html:565
msgid "Please provide a reason for rejection..."
msgstr ""

#: app/templates/quotes/view.html:579
msgid "Are you sure you want to delete this quote? This action cannot be undone."
msgstr ""

#: app/templates/recurring_invoices/create.html:120
#: app/templates/recurring_invoices/list.html:15
msgid "Create Recurring Invoice"
msgstr ""

#: app/templates/recurring_invoices/edit.html:111
msgid "Update Recurring Invoice"
msgstr ""

#: app/templates/recurring_invoices/list.html:12
msgid "Automate invoice generation for subscription-based billing"
msgstr ""

#: app/templates/recurring_invoices/list.html:26
#: app/templates/recurring_invoices/list.html:44
#: app/templates/recurring_tasks/form.html:58
#: app/templates/recurring_tasks/list.html:32
#: app/templates/recurring_tasks/list.html:56
#: app/templates/reports/index.html:483
#: app/templates/reports/schedule_form.html:44
#: app/templates/reports/scheduled.html:28
#: app/templates/reports/scheduled.html:58
msgid "Frequency"
msgstr ""

#: app/templates/recurring_invoices/list.html:27
#: app/templates/recurring_invoices/list.html:49
#: app/templates/recurring_tasks/list.html:33
#: app/templates/recurring_tasks/list.html:64
#: app/templates/reports/scheduled.html:29
#: app/templates/reports/scheduled.html:61
msgid "Next Run"
msgstr ""

#: app/templates/recurring_invoices/view.html:17
msgid "Generate Now"
msgstr ""

#: app/templates/recurring_invoices/view.html:22
#: app/templates/time_entry_templates/view.html:24
msgid "Template Details"
msgstr ""

#: app/templates/recurring_invoices/view.html:53
msgid "Invoice Settings"
msgstr ""

#: app/templates/recurring_invoices/view.html:92
msgid "Recently Generated Invoices"
msgstr ""

#: app/templates/recurring_tasks/form.html:4
msgid "Recurring Task"
msgstr ""

#: app/templates/recurring_tasks/form.html:8
#: app/templates/recurring_tasks/list.html:4
#: app/templates/recurring_tasks/list.html:8
#: app/templates/recurring_tasks/list.html:13
msgid "Recurring Tasks"
msgstr ""

#: app/templates/recurring_tasks/form.html:9
#: app/templates/recurring_tasks/form.html:14
#: app/templates/recurring_tasks/list.html:20
msgid "Create Recurring Task"
msgstr ""

#: app/templates/recurring_tasks/form.html:9
#: app/templates/recurring_tasks/form.html:14
msgid "Edit Recurring Task"
msgstr ""

#: app/templates/recurring_tasks/form.html:15
msgid "Set up automated task creation"
msgstr ""

#: app/templates/recurring_tasks/form.html:29
msgid "Task Name Template"
msgstr ""

#: app/templates/recurring_tasks/form.html:30
msgid "e.g., Weekly Team Meeting"
msgstr ""

#: app/templates/recurring_tasks/form.html:31
msgid "This will be used as the base name for created tasks"
msgstr ""

#: app/templates/recurring_tasks/form.html:55
msgid "Schedule"
msgstr ""

#: app/templates/recurring_tasks/form.html:62
#: app/templates/reports/index.html:487
#: app/templates/reports/schedule_form.html:49
msgid "Monthly"
msgstr ""

#: app/templates/recurring_tasks/form.html:63
msgid "Yearly"
msgstr ""

#: app/templates/recurring_tasks/form.html:68
msgid "Interval"
msgstr ""

#: app/templates/recurring_tasks/form.html:70
msgid "Repeat every N periods (e.g., every 2 weeks)"
msgstr ""

#: app/templates/recurring_tasks/form.html:74
msgid "Next Run Date"
msgstr ""

#: app/templates/recurring_tasks/form.html:81
msgid "Optional: Stop creating tasks after this date"
msgstr ""

#: app/templates/recurring_tasks/form.html:88
msgid "Task Settings"
msgstr ""

#: app/templates/recurring_tasks/form.html:106
#: app/templates/tasks/create.html:106 app/templates/tasks/edit.html:114
msgid "Assign To"
msgstr ""

#: app/templates/recurring_tasks/form.html:120
msgid "Auto-assign to creator"
msgstr ""

#: app/templates/recurring_tasks/list.html:14
msgid "Automated task creation templates"
msgstr ""

#: app/templates/recurring_tasks/list.html:68
#: app/templates/reports/scheduled.html:65
msgid "Not scheduled"
msgstr ""

#: app/templates/recurring_tasks/list.html:84
msgid "Are you sure you want to delete this recurring task?"
msgstr ""

#: app/templates/recurring_tasks/list.html:101
msgid "No recurring tasks"
msgstr ""

#: app/templates/recurring_tasks/list.html:102
msgid "Create recurring task templates to automatically generate tasks on a schedule."
msgstr ""

#: app/templates/reports/builder.html:4
#: app/templates/reports/custom_view.html:49
#: app/templates/reports/custom_view.html:97
msgid "Edit Report"
msgstr ""

#: app/templates/reports/builder.html:4
msgid "Custom Report Builder"
msgstr ""

#: app/templates/reports/builder.html:26
msgid "Unpaid time entries"
msgstr ""

#: app/templates/reports/builder.html:28
msgid "Time entries, unpaid only, last 30 days"
msgstr ""

#: app/templates/reports/builder.html:29
msgid "Data Sources"
msgstr ""

#: app/templates/reports/builder.html:38
msgid "Components"
msgstr ""

#: app/templates/reports/builder.html:40
msgid "Add table to report"
msgstr ""

#: app/templates/reports/builder.html:41 app/templates/reports/builder.html:407
msgid "Table"
msgstr ""

#: app/templates/reports/builder.html:43
msgid "Add chart to report"
msgstr ""

#: app/templates/reports/builder.html:44 app/templates/reports/builder.html:408
#: app/templates/reports/custom_view.html:77
msgid "Chart"
msgstr ""

#: app/templates/reports/builder.html:46
msgid "Add doughnut chart to report"
msgstr ""

#: app/templates/reports/builder.html:47 app/templates/reports/builder.html:409
msgid "Doughnut Chart"
msgstr ""

#: app/templates/reports/builder.html:49
msgid "Add bar chart to report"
msgstr ""

#: app/templates/reports/builder.html:50 app/templates/reports/builder.html:410
msgid "Bar Chart"
msgstr ""

#: app/templates/reports/builder.html:52
msgid "Add summary to report"
msgstr ""

#: app/templates/reports/builder.html:63
msgid "Report Canvas"
msgstr ""

#: app/templates/reports/builder.html:74
msgid "Report canvas"
msgstr ""

#: app/templates/reports/builder.html:76 app/templates/reports/builder.html:249
#: app/templates/reports/builder.html:400
#: app/templates/reports/builder.html:459
msgid "Drag data sources and components here to build your report"
msgstr ""

#: app/templates/reports/builder.html:103
msgid "Advanced Filters"
msgstr ""

#: app/templates/reports/builder.html:111
msgid "Unpaid Hours Only"
msgstr ""

#: app/templates/reports/builder.html:115
msgid "Unpaid = billable, not yet on any invoice."
msgstr ""

#: app/templates/reports/builder.html:124
msgid "Custom Field"
msgstr ""

#: app/templates/reports/builder.html:127
msgid "No Filter"
msgstr ""

#: app/templates/reports/builder.html:135
msgid "Field Value"
msgstr ""

#: app/templates/reports/builder.html:138
msgid "e.g., MM, PB"
msgstr ""

#: app/templates/reports/builder.html:140
msgid "Enter the value to filter by (e.g., salesman initial)"
msgstr ""

#: app/templates/reports/builder.html:154
msgid "Report Preview"
msgstr ""

#: app/templates/reports/builder.html:162
msgid "Loading preview..."
msgstr ""

#: app/templates/reports/builder.html:178
msgid "Save Report"
msgstr ""

#: app/templates/reports/builder.html:181
msgid "Report Name"
msgstr ""

#: app/templates/reports/builder.html:182
msgid "My Custom Report"
msgstr ""

#: app/templates/reports/builder.html:187
msgid "Private"
msgstr ""

#: app/templates/reports/builder.html:188
msgid "Team"
msgstr ""

#: app/templates/reports/builder.html:199
#: app/templates/reports/saved_views_list.html:47
msgid "Iterative Report Generation"
msgstr ""

#: app/templates/reports/builder.html:203
msgid "Generate one report per custom field value (e.g., one report per salesman)"
msgstr ""

#: app/templates/reports/builder.html:206
#: app/templates/reports/schedule_form.html:78
msgid "Custom Field Name"
msgstr ""

#: app/templates/reports/builder.html:208
msgid "Select Field"
msgstr ""

#: app/templates/reports/builder.html:214
msgid "Select the custom field to iterate over (e.g., \"salesman\")"
msgstr ""

#: app/templates/reports/builder.html:467
#: app/templates/reports/builder.html:689
msgid "Please select a data source first"
msgstr ""

#: app/templates/reports/builder.html:559
msgid "Failed to generate preview"
msgstr ""

#: app/templates/reports/builder.html:567
msgid "Unknown error occurred"
msgstr ""

#: app/templates/reports/builder.html:568
msgid "Error loading preview"
msgstr ""

#: app/templates/reports/builder.html:619
msgid "No data found for the selected filters"
msgstr ""

#: app/templates/reports/builder.html:681
msgid "Please enter a report name"
msgstr ""

#: app/templates/reports/builder.html:768
msgid "Report created successfully!"
msgstr ""

#: app/templates/reports/builder.html:769
msgid "Report updated successfully!"
msgstr ""

#: app/templates/reports/builder.html:790
msgid "Failed to save report"
msgstr ""

#: app/templates/reports/builder.html:804
msgid "Error saving report"
msgstr ""

#: app/templates/reports/custom_view.html:4
msgid "Custom Report"
msgstr ""

#: app/templates/reports/custom_view.html:26
msgid "Data Table"
msgstr ""

#: app/templates/reports/custom_view.html:52
msgid "No data found"
msgstr ""

#: app/templates/reports/custom_view.html:53
msgid "This report has no data matching the current filters. Try adjusting your date range or filters."
msgstr ""

#: app/templates/reports/custom_view.html:72
msgid "No summary data available."
msgstr ""

#: app/templates/reports/custom_view.html:81
msgid "No data available for chart."
msgstr ""

#: app/templates/reports/custom_view.html:92
msgid "No components configured"
msgstr ""

#: app/templates/reports/custom_view.html:94
msgid "This report has no components configured. Please edit the report to add components."
msgstr ""

#: app/templates/reports/export_form.html:9
msgid "Export Time Entries"
msgstr ""

#: app/templates/reports/export_form.html:24
msgid "Use the filters below to customize your export. Choose CSV or Excel format. All filters are optional - leave blank to include all entries within the date range."
msgstr ""

#: app/templates/reports/export_form.html:36
#: app/templates/reports/export_form.html:38
msgid "Export format"
msgstr ""

#: app/templates/reports/export_form.html:175
msgid "e.g., development, meeting, urgent"
msgstr ""

#: app/templates/reports/export_form.html:191
msgid "Reset Filters"
msgstr ""

#: app/templates/reports/export_form.html:209
msgid "CSV / Excel"
msgstr ""

#: app/templates/reports/export_form.html:217
msgid "The file will be downloaded with a filename indicating the date range and applied filters."
msgstr ""

#: app/templates/reports/export_form.html:341
msgid "Please select both start and end dates."
msgstr ""

#: app/templates/reports/export_form.html:347
msgid "Start date must be before or equal to end date."
msgstr ""

#: app/templates/reports/index.html:13
msgid "View comprehensive reports and analytics for your time tracking data"
msgstr ""

#: app/templates/reports/index.html:20
msgid "Support development or get a supporter license — the app stays free for everyone."
msgstr ""

#: app/templates/reports/index.html:46
msgid "Payments Received"
msgstr ""

#: app/templates/reports/index.html:62
msgid "Net Received"
msgstr ""

#: app/templates/reports/index.html:63
msgid "After fees"
msgstr ""

#: app/templates/reports/index.html:69
msgid "Date Range & Comparison"
msgstr ""

#: app/templates/reports/index.html:73
msgid "Quick Date Ranges"
msgstr ""

#: app/templates/reports/index.html:79
msgid "This Week"
msgstr ""

#: app/templates/reports/index.html:82
msgid "This Month"
msgstr ""

#: app/templates/reports/index.html:85
msgid "This Year"
msgstr ""

#: app/templates/reports/index.html:89
msgid "Custom Range"
msgstr ""

#: app/templates/reports/index.html:102
msgid "Comparison View"
msgstr ""

#: app/templates/reports/index.html:107
#: app/templates/reports/week_in_review.html:7
#: app/templates/reports/week_in_review.html:12
msgid "Week in Review"
msgstr ""

#: app/templates/reports/index.html:108
msgid "This week's hours, top projects, billable vs non-billable"
msgstr ""

#: app/templates/reports/index.html:116
msgid "This Month vs Last Month"
msgstr ""

#: app/templates/reports/index.html:117
msgid "Compare current month with previous month"
msgstr ""

#: app/templates/reports/index.html:125
msgid "This Year vs Last Year"
msgstr ""

#: app/templates/reports/index.html:126
msgid "Compare current year with previous year"
msgstr ""

#: app/templates/reports/index.html:137
msgid "Comparison Results"
msgstr ""

#: app/templates/reports/index.html:146
msgid "Export Reports"
msgstr ""

#: app/templates/reports/index.html:149
msgid "Export Format"
msgstr ""

#: app/templates/reports/index.html:155
msgid "Export Report"
msgstr ""

#: app/templates/reports/index.html:162
msgid "Manage Scheduled Reports"
msgstr ""

#: app/templates/reports/index.html:169
msgid "CSV Export"
msgstr ""

#: app/templates/reports/index.html:172
msgid "Excel Export"
msgstr ""

#: app/templates/reports/index.html:180
msgid "Report Types"
msgstr ""

#: app/templates/reports/index.html:183
#: app/templates/reports/project_report.html:5
msgid "Project Report"
msgstr ""

#: app/templates/reports/index.html:186
#: app/templates/reports/user_report.html:5
msgid "User Report"
msgstr ""

#: app/templates/reports/index.html:189 app/templates/reports/summary.html:6
msgid "Summary Report"
msgstr ""

#: app/templates/reports/index.html:192
#: app/templates/reports/task_report.html:5
msgid "Task Report"
msgstr ""

#: app/templates/reports/index.html:195
#: app/templates/reports/time_entries_report.html:5
msgid "Time Entries Report"
msgstr ""

#: app/templates/reports/index.html:198
#: app/templates/reports/unpaid_hours_report.html:6
msgid "Unpaid Hours Report"
msgstr ""

#: app/templates/reports/index.html:207
msgid "Report Management"
msgstr ""

#: app/templates/reports/index.html:210
#: app/templates/reports/saved_views_list.html:4
msgid "Saved Report Views"
msgstr ""

#: app/templates/reports/index.html:211
msgid "View and manage your saved report configurations"
msgstr ""

#: app/templates/reports/index.html:215
msgid "Manage automated report delivery via email"
msgstr ""

#: app/templates/reports/index.html:244
msgid "No recent entries."
msgstr ""

#: app/templates/reports/index.html:269 app/templates/reports/index.html:435
msgid "No scheduled reports yet."
msgstr ""

#: app/templates/reports/index.html:273
msgid "Add Scheduled Report"
msgstr ""

#: app/templates/reports/index.html:366
msgid "Please set a date range"
msgstr ""

#: app/templates/reports/index.html:451
msgid "You need to create a saved report view first. Please create one from the reports page."
msgstr ""

#: app/templates/reports/index.html:463
#: app/templates/reports/schedule_form.html:3
#: app/templates/reports/schedule_form.html:8
#: app/templates/reports/scheduled.html:116
msgid "Schedule Report"
msgstr ""

#: app/templates/reports/index.html:470
#: app/templates/reports/schedule_form.html:20
msgid "Report View"
msgstr ""

#: app/templates/reports/index.html:472
msgid "Select a report view..."
msgstr ""

#: app/templates/reports/index.html:477 app/templates/reports/scheduled.html:27
#: app/templates/reports/scheduled.html:50
msgid "Recipients"
msgstr ""

#: app/templates/reports/index.html:480
msgid "Comma-separated email addresses"
msgstr ""

#: app/templates/reports/index.html:495
#: app/templates/reports/schedule_form.html:101
msgid "Create Schedule"
msgstr ""

#: app/templates/reports/index.html:506
msgid "Failed to load report views"
msgstr ""

#: app/templates/reports/index.html:543
msgid "Scheduled report created successfully"
msgstr ""

#: app/templates/reports/index.html:546 app/templates/reports/index.html:553
msgid "Failed to create scheduled report"
msgstr ""

#: app/templates/reports/index.html:571 app/templates/reports/index.html:576
msgid "Failed to update schedule"
msgstr ""

#: app/templates/reports/index.html:581 app/templates/reports/scheduled.html:98
msgid "Are you sure you want to delete this scheduled report?"
msgstr ""

#: app/templates/reports/index.html:596
msgid "Scheduled report deleted successfully"
msgstr ""

#: app/templates/reports/index.html:599 app/templates/reports/index.html:604
msgid "Failed to delete scheduled report"
msgstr ""

#: app/templates/reports/iterative_view.html:4
msgid "Iterative Report"
msgstr ""

#: app/templates/reports/iterative_view.html:17
#, python-format
msgid "Iterative Report - One report per %(field_name)s value"
msgstr ""

#: app/templates/reports/iterative_view.html:74
msgid "Summary by Client"
msgstr ""

#: app/templates/reports/iterative_view.html:90
#, python-format
msgid "No data found for this %(field_name)s value"
msgstr ""

#: app/templates/reports/iterative_view.html:99
#, python-format
msgid "No unique values found for custom field \"%(field_name)s\""
msgstr ""

#: app/templates/reports/project_report.html:85
#: app/templates/reports/user_report.html:157
msgid "No data for the selected period."
msgstr ""

#: app/templates/reports/project_report.html:86
msgid "Try a different date range or ensure time has been logged on projects."
msgstr ""

#: app/templates/reports/saved_views_list.html:29
#: app/templates/reports/saved_views_list.html:44
msgid "Features"
msgstr ""

#: app/templates/reports/saved_views_list.html:48
msgid "Iterative"
msgstr ""

#: app/templates/reports/saved_views_list.html:67
msgid "Are you sure you want to delete this report view?"
msgstr ""

#: app/templates/reports/saved_views_list.html:83
msgid "No Saved Report Views"
msgstr ""

#: app/templates/reports/saved_views_list.html:84
msgid "Create and save report configurations to use them in scheduled reports."
msgstr ""

#: app/templates/reports/saved_views_list.html:85
msgid "Create Report"
msgstr ""

#: app/templates/reports/schedule_form.html:9
msgid "Set up automated email delivery for reports"
msgstr ""

#: app/templates/reports/schedule_form.html:11
msgid "Back to Scheduled Reports"
msgstr ""

#: app/templates/reports/schedule_form.html:22
msgid "Select a saved report view..."
msgstr ""

#: app/templates/reports/schedule_form.html:27
msgid "Select a saved report view to schedule"
msgstr ""

#: app/templates/reports/schedule_form.html:32
msgid "Email Recipients"
msgstr ""

#: app/templates/reports/schedule_form.html:34
msgid "email1@example.com, email2@example.com"
msgstr ""

#: app/templates/reports/schedule_form.html:36
msgid "Enter one or more email addresses separated by commas. These recipients will receive the scheduled report via email."
msgstr ""

#: app/templates/reports/schedule_form.html:39
msgid "When using Mapping or Template, these are used as fallback if no address is found for a value."
msgstr ""

#: app/templates/reports/schedule_form.html:46
msgid "Select frequency..."
msgstr ""

#: app/templates/reports/schedule_form.html:50
msgid "Custom (Cron)"
msgstr ""

#: app/templates/reports/schedule_form.html:57
msgid "Use previous calendar month as date range"
msgstr ""

#: app/templates/reports/schedule_form.html:59
msgid "For monthly runs: report will use the first and last day of the previous month."
msgstr ""

#: app/templates/reports/schedule_form.html:63
msgid "Cron Expression"
msgstr ""

#: app/templates/reports/schedule_form.html:65
msgid "Cron format: minute hour day month weekday"
msgstr ""

#: app/templates/reports/schedule_form.html:70
msgid "Report Iteration (Optional)"
msgstr ""

#: app/templates/reports/schedule_form.html:74
msgid "Split report by custom field value"
msgstr ""

#: app/templates/reports/schedule_form.html:80
msgid "The custom field name to iterate over (e.g., \"salesman\"). A separate report will be generated for each unique value."
msgstr ""

#: app/templates/reports/schedule_form.html:83
msgid "Email distribution"
msgstr ""

#: app/templates/reports/schedule_form.html:85
msgid "All reports to recipients below"
msgstr ""

#: app/templates/reports/schedule_form.html:86
msgid "Per value: SalesmanEmailMapping table"
msgstr ""

#: app/templates/reports/schedule_form.html:87
msgid "Per value: email from template"
msgstr ""

#: app/templates/reports/schedule_form.html:91
msgid "Recipient email template"
msgstr ""

#: app/templates/reports/schedule_form.html:93
#, python-brace-format
msgid "Use {value} for the value (e.g. KF); {value}@test.de yields KF@test.de. Use {value_lower} for lowercase, e.g. {value_lower}@test.de yields kf@test.de."
msgstr ""

#: app/templates/reports/scheduled.html:26
#: app/templates/reports/scheduled.html:37
msgid "Report"
msgstr ""

#: app/templates/reports/scheduled.html:41
msgid "Split by"
msgstr ""

#: app/templates/reports/scheduled.html:46
msgid "Distribution"
msgstr ""

#: app/templates/reports/scheduled.html:54
msgid "Template"
msgstr ""

#: app/templates/reports/scheduled.html:70
msgid "Invalid: saved view not found"
msgstr ""

#: app/templates/reports/scheduled.html:86
msgid "Trigger report now (for testing)"
msgstr ""

#: app/templates/reports/scheduled.html:93
msgid "Fix or remove invalid schedule"
msgstr ""

#: app/templates/reports/scheduled.html:114
msgid "No Scheduled Reports"
msgstr ""

#: app/templates/reports/scheduled.html:115
msgid "Create scheduled reports to automatically receive reports via email."
msgstr ""

#: app/templates/reports/scheduled.html:152
msgid "Report triggered successfully!"
msgstr ""

#: app/templates/reports/scheduled.html:153
msgid "Report sent to recipients."
msgstr ""

#: app/templates/reports/scheduled.html:156
msgid "Error triggering report:"
msgstr ""

#: app/templates/reports/scheduled.html:161
msgid "Error triggering report. Please check the console for details."
msgstr ""

#: app/templates/reports/summary.html:27
msgid "Time by project (last 30 days)"
msgstr ""

#: app/templates/reports/summary.html:30
msgid "Time distribution by project"
msgstr ""

#: app/templates/reports/summary.html:65 app/templates/reports/summary.html:130
msgid "No project data for the last 30 days."
msgstr ""

#: app/templates/reports/summary.html:70
msgid "Daily trend (last 14 days)"
msgstr ""

#: app/templates/reports/summary.html:73
msgid "Daily hours trend"
msgstr ""

#: app/templates/reports/summary.html:108
msgid "No trend data."
msgstr ""

#: app/templates/reports/summary.html:114
msgid "Top Projects (Last 30 Days)"
msgstr ""

#: app/templates/reports/task_report.html:102
msgid "No tasks with logged time for the selected period."
msgstr ""

#: app/templates/reports/task_report.html:103
msgid "Try a different date range or log time on tasks."
msgstr ""

#: app/templates/reports/time_entries_report.html:49
msgid "All Clients"
msgstr ""

#: app/templates/reports/time_entries_report.html:60
#: app/templates/timer/calendar.html:69 app/templates/timer/calendar.html:569
msgid "All Tasks"
msgstr ""

#: app/templates/reports/time_entries_report.html:136
msgid "No time entries found for the selected filters."
msgstr ""

#: app/templates/reports/unpaid_hours_report.html:45
msgid "Total Unpaid Hours"
msgstr ""

#: app/templates/reports/unpaid_hours_report.html:49
#: app/templates/reports/unpaid_hours_report.html:75
#: app/templates/reports/unpaid_hours_report.html:94
msgid "Estimated Amount"
msgstr ""

#: app/templates/reports/unpaid_hours_report.html:53
msgid "Clients with Unpaid Hours"
msgstr ""

#: app/templates/reports/unpaid_hours_report.html:61
msgid "Unpaid Hours by Client"
msgstr ""

#: app/templates/reports/unpaid_hours_report.html:151
msgid "No unpaid hours found for the selected period."
msgstr ""

#: app/templates/reports/user_report.html:69
#: app/templates/reports/user_report.html:94
msgid "Export entries (Excel)"
msgstr ""

#: app/templates/reports/user_report.html:70
msgid "Select columns:"
msgstr ""

#: app/templates/reports/user_report.html:88
msgid "Duration (formatted)"
msgstr ""

#: app/templates/reports/user_report.html:158
msgid "Try a different date range or ensure time has been logged."
msgstr ""

#: app/templates/reports/user_report.html:174
msgid "About Overtime Tracking"
msgstr ""

#: app/templates/reports/week_in_review.html:13
msgid "This week's time summary and top projects"
msgstr ""

#: app/templates/reports/week_in_review.html:17
msgid "Back to Reports"
msgstr ""

#: app/templates/reports/week_in_review.html:38
#, python-format
msgid "%(count)s time entries logged this week."
msgstr ""

#: app/templates/reports/week_in_review.html:43
msgid "Top projects this week"
msgstr ""

#: app/templates/reports/week_in_review.html:54
msgid "No time logged this week yet."
msgstr ""

#: app/templates/saved_filters/list.html:46
msgid "Apply filter"
msgstr ""

#: app/templates/saved_filters/list.html:51
msgid "Are you sure you want to delete this filter?"
msgstr ""

#: app/templates/saved_filters/list.html:51
msgid "Delete Filter"
msgstr ""

#: app/templates/saved_filters/list.html:93
msgid "Go to Reports"
msgstr ""

#: app/templates/saved_filters/list.html:96
msgid "No saved filters yet"
msgstr ""

#: app/templates/saved_filters/list.html:97
msgid "Save filters from Reports or Tasks pages for quick access."
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:227
msgid "Customize Shortcuts"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:235
msgid "Search shortcuts..."
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:246
msgid "Save changes"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:384
msgid "Press keys..."
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:444
msgid "Click then press a key combination"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:444
msgid "Click to record"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:445
msgid "Revert"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:457
msgid "Conflict: the same key is assigned to multiple actions."
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:473
msgid "Failed to save"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:477
msgid "Shortcuts saved."
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:478
msgid "Failed to save shortcuts."
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:483
msgid "This will reset all keyboard shortcuts to their default values. Continue?"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:484
msgid "Reset to Defaults"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:484
msgid "Reset all shortcuts to defaults?"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:489
msgid "Failed to reset"
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:493
msgid "Shortcuts reset to defaults."
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:494
msgid "Failed to reset shortcuts."
msgstr ""

#: app/templates/settings/keyboard_shortcuts.html:511
msgid "Failed to load shortcuts."
msgstr ""

#: app/templates/setup/initial_setup.html:6
msgid "Welcome"
msgstr ""

#: app/templates/setup/initial_setup.html:35
msgid "Privacy First"
msgstr ""

#: app/templates/setup/initial_setup.html:40
msgid "Self-hosted on your server"
msgstr ""

#: app/templates/setup/initial_setup.html:46
msgid "Anonymous telemetry (opt-in)"
msgstr ""

#: app/templates/setup/initial_setup.html:52
msgid "No PII collected ever"
msgstr ""

#: app/templates/setup/initial_setup.html:58
msgid "Open source & transparent"
msgstr ""

#: app/templates/setup/initial_setup.html:70
msgid "Step 1 of 6"
msgstr ""

#: app/templates/setup/initial_setup.html:85
msgid "Welcome to TimeTracker"
msgstr ""

#: app/templates/setup/initial_setup.html:86
msgid "Let's get you set up in just a moment"
msgstr ""

#: app/templates/setup/initial_setup.html:88
msgid "Thank you for choosing TimeTracker!"
msgstr ""

#: app/templates/setup/initial_setup.html:90
msgid "Your data stays on your server, and you have complete control."
msgstr ""

#: app/templates/setup/initial_setup.html:97
msgid "Region & time"
msgstr ""

#: app/templates/setup/initial_setup.html:98
msgid "Set your default timezone, date and time format, and currency."
msgstr ""

#: app/templates/setup/initial_setup.html:101
#: app/templates/user/settings.html:419
msgid "Timezone"
msgstr ""

#: app/templates/setup/initial_setup.html:110
msgid "Date format"
msgstr ""

#: app/templates/setup/initial_setup.html:119
msgid "Time format"
msgstr ""

#: app/templates/setup/initial_setup.html:121
msgid "24-hour"
msgstr ""

#: app/templates/setup/initial_setup.html:122
msgid "12-hour"
msgstr ""

#: app/templates/setup/initial_setup.html:136
msgid "Company details for invoices and branding."
msgstr ""

#: app/templates/setup/initial_setup.html:139
msgid "Company name"
msgstr ""

#: app/templates/setup/initial_setup.html:140
msgid "Your Company Name"
msgstr ""

#: app/templates/setup/initial_setup.html:144
msgid "Your Company Address"
msgstr ""

#: app/templates/setup/initial_setup.html:166
msgid "App behavior and timer settings."
msgstr ""

#: app/templates/setup/initial_setup.html:171
msgid "Allow self-registration"
msgstr ""

#: app/templates/setup/initial_setup.html:172
msgid "Users can create accounts from the login page"
msgstr ""

#: app/templates/setup/initial_setup.html:176
msgid "Time rounding (minutes)"
msgstr ""

#: app/templates/setup/initial_setup.html:183
msgid "Round time entries to the nearest N minutes."
msgstr ""

#: app/templates/setup/initial_setup.html:188
msgid "Single active timer per user"
msgstr ""

#: app/templates/setup/initial_setup.html:189
msgid "Only one running timer at a time per user"
msgstr ""

#: app/templates/setup/initial_setup.html:193
msgid "Idle timeout (minutes)"
msgstr ""

#: app/templates/setup/initial_setup.html:195
msgid "Pause timer after this many minutes of inactivity."
msgstr ""

#: app/templates/setup/initial_setup.html:203
msgid "Configure calendar OAuth now or later in Admin → Settings."
msgstr ""

#: app/templates/setup/initial_setup.html:207
msgid "Google Calendar OAuth"
msgstr ""

#: app/templates/setup/initial_setup.html:210
msgid "Client ID (optional)"
msgstr ""

#: app/templates/setup/initial_setup.html:211
msgid "Client Secret (optional)"
msgstr ""

#: app/templates/setup/initial_setup.html:214
msgid "Get these from"
msgstr ""

#: app/templates/setup/initial_setup.html:214
#: app/templates/setup/initial_setup.html:221
msgid "Google Cloud Console"
msgstr ""

#: app/templates/setup/initial_setup.html:218
msgid "How to get Google Calendar OAuth credentials?"
msgstr ""

#: app/templates/setup/initial_setup.html:221
msgid "Go to"
msgstr ""

#: app/templates/setup/initial_setup.html:222
msgid "Create a new project or select an existing one"
msgstr ""

#: app/templates/setup/initial_setup.html:223
msgid "Enable the Google Calendar API"
msgstr ""

#: app/templates/setup/initial_setup.html:224
msgid "Go to Credentials → Create Credentials → OAuth 2.0 Client ID"
msgstr ""

#: app/templates/setup/initial_setup.html:225
msgid "Set application type to \"Web application\""
msgstr ""

#: app/templates/setup/initial_setup.html:226
msgid "Add authorized redirect URI:"
msgstr ""

#: app/templates/setup/initial_setup.html:227
msgid "Copy the Client ID and Client Secret"
msgstr ""

#: app/templates/setup/initial_setup.html:232
msgid "You can skip this step and configure integrations later."
msgstr ""

#: app/templates/setup/initial_setup.html:237
msgid "Privacy & finish"
msgstr ""

#: app/templates/setup/initial_setup.html:238
msgid "Choose whether to help improve TimeTracker with anonymous usage data."
msgstr ""

#: app/templates/setup/initial_setup.html:244
msgid "Enable anonymous telemetry"
msgstr ""

#: app/templates/setup/initial_setup.html:245
msgid "Help us understand usage patterns to improve TimeTracker"
msgstr ""

#: app/templates/setup/initial_setup.html:250
msgid "What data is collected?"
msgstr ""

#: app/templates/setup/initial_setup.html:253
msgid "What we collect:"
msgstr ""

#: app/templates/setup/initial_setup.html:255
msgid "Anonymous installation fingerprint (hashed)"
msgstr ""

#: app/templates/setup/initial_setup.html:256
msgid "Application version & platform info"
msgstr ""

#: app/templates/setup/initial_setup.html:257
msgid "Feature usage statistics"
msgstr ""

#: app/templates/setup/initial_setup.html:261
msgid "What we DON'T collect:"
msgstr ""

#: app/templates/setup/initial_setup.html:263
msgid "No usernames or emails"
msgstr ""

#: app/templates/setup/initial_setup.html:264
msgid "No time entry data or notes"
msgstr ""

#: app/templates/setup/initial_setup.html:265
msgid "No client or business data"
msgstr ""

#: app/templates/setup/initial_setup.html:268
msgid "You can change this anytime in"
msgstr ""

#: app/templates/setup/initial_setup.html:273
msgid "By continuing, you agree to use TimeTracker under the"
msgstr ""

#: app/templates/setup/initial_setup.html:273
msgid "GPL-3.0 License"
msgstr ""

#: app/templates/setup/initial_setup.html:287
#: app/templates/setup/initial_setup.html:288
msgid "Complete Setup & Continue"
msgstr ""

#: app/templates/tasks/_kanban.html:65 app/templates/tasks/_kanban.html:1360
#: app/templates/tasks/edit.html:4 app/templates/tasks/edit.html:16
#: app/templates/tasks/view.html:8
msgid "Edit Task"
msgstr ""

#: app/templates/tasks/_kanban.html:913
msgid "Failed to update status"
msgstr ""

#: app/templates/tasks/_kanban.html:924 app/templates/tasks/_kanban.html:1000
msgid "Failed to update task status"
msgstr ""

#: app/templates/tasks/_kanban.html:937
msgid "Kanban column created"
msgstr ""

#: app/templates/tasks/_kanban.html:938
msgid "Kanban column deleted"
msgstr ""

#: app/templates/tasks/_kanban.html:939
msgid "Kanban columns reordered"
msgstr ""

#: app/templates/tasks/_kanban.html:940
msgid "Kanban column visibility changed"
msgstr ""

#: app/templates/tasks/_kanban.html:941 app/templates/tasks/_kanban.html:944
#: app/templates/tasks/_kanban.html:1017
msgid "Kanban columns updated"
msgstr ""

#: app/templates/tasks/_kanban.html:942 app/templates/tasks/_kanban.html:1017
#: app/templates/timer/time_entries_overview.html:210
msgid "Update"
msgstr ""

#: app/templates/tasks/_kanban.html:955
msgid "Failed to refresh kanban columns"
msgstr ""

#: app/templates/tasks/_kanban.html:1218
msgid "Loading task details..."
msgstr ""

#: app/templates/tasks/_kanban.html:1313
msgid "Tracked"
msgstr ""

#: app/templates/tasks/_kanban.html:1357
msgid "View Full Details"
msgstr ""

#: app/templates/tasks/create.html:14 app/templates/tasks/edit.html:290
#: app/templates/tasks/overdue.html:13
msgid "Back to Tasks"
msgstr ""

#: app/templates/tasks/create.html:16
msgid "Add a new task to your project to break down work into manageable components"
msgstr ""

#: app/templates/tasks/create.html:27 app/templates/tasks/edit.html:34
msgid "Enter a descriptive task name"
msgstr ""

#: app/templates/tasks/create.html:28 app/templates/tasks/edit.html:35
msgid "Choose a clear, descriptive name that explains what needs to be done"
msgstr ""

#: app/templates/tasks/create.html:38 app/templates/tasks/edit.html:44
#: app/templates/tasks/edit.html:515
msgid "Provide detailed information about the task, requirements, and any specific instructions..."
msgstr ""

#: app/templates/tasks/create.html:41 app/templates/tasks/edit.html:47
msgid "Optional: Add context, requirements, or specific instructions for the task"
msgstr ""

#: app/templates/tasks/create.html:53 app/templates/tasks/edit.html:63
msgid "Select the project this task belongs to"
msgstr ""

#: app/templates/tasks/create.html:68
msgid "Initial Status"
msgstr ""

#: app/templates/tasks/create.html:74 app/templates/tasks/create.html:86
#: app/templates/tasks/create.html:478 app/templates/tasks/edit.html:83
#: app/templates/tasks/edit.html:658 app/templates/tasks/my_tasks.html:134
#: app/utils/i18n_helpers.py:19 app/utils/i18n_helpers.py:31
msgid "Done"
msgstr ""

#: app/templates/tasks/create.html:95 app/templates/tasks/edit.html:103
msgid "Optional: Set a deadline for this task"
msgstr ""

#: app/templates/tasks/create.html:100 app/templates/tasks/edit.html:108
msgid "Optional: Estimate how long this task will take"
msgstr ""

#: app/templates/tasks/create.html:113 app/templates/tasks/edit.html:121
msgid "Optional: Assign this task to a team member"
msgstr ""

#: app/templates/tasks/create.html:122 app/templates/tasks/edit.html:130
msgid "e.g. bug, frontend, urgent"
msgstr ""

#: app/templates/tasks/create.html:123 app/templates/tasks/edit.html:131
msgid "Comma-separated tags for categorization"
msgstr ""

#: app/templates/tasks/create.html:133 app/templates/tasks/edit.html:141
msgid "Optional: Color for this task on the Gantt chart. If unset, the project color is used. Pick or enter a hex code (e.g. #3b82f6)."
msgstr ""

#: app/templates/tasks/create.html:148
msgid "Task Creation Tips"
msgstr ""

#: app/templates/tasks/create.html:156
msgid "Use action verbs and be specific about what needs to be done"
msgstr ""

#: app/templates/tasks/create.html:164
msgid "Realistic Estimates"
msgstr ""

#: app/templates/tasks/create.html:165
msgid "Consider complexity and dependencies when estimating time"
msgstr ""

#: app/templates/tasks/create.html:173
msgid "Set Deadlines"
msgstr ""

#: app/templates/tasks/create.html:174
msgid "Due dates help prioritize work and track progress"
msgstr ""

#: app/templates/tasks/create.html:182
msgid "Priority Matters"
msgstr ""

#: app/templates/tasks/create.html:183
msgid "Use priority levels to help team members focus on what's most important"
msgstr ""

#: app/templates/tasks/edit.html:14
msgid "Back to Task"
msgstr ""

#: app/templates/tasks/edit.html:16
#, python-format
msgid "Update task details and settings for \"%(task)s\""
msgstr ""

#: app/templates/tasks/edit.html:23
msgid "Task Information"
msgstr ""

#: app/templates/tasks/edit.html:147
msgid "Update Task"
msgstr ""

#: app/templates/tasks/edit.html:163
msgid "Estimate used"
msgstr ""

#: app/templates/tasks/edit.html:170 app/templates/weekly_goals/index.html:185
msgid "Actual"
msgstr ""

#: app/templates/tasks/edit.html:183
msgid "Current Task Info"
msgstr ""

#: app/templates/tasks/edit.html:187
msgid "Current Status"
msgstr ""

#: app/templates/tasks/edit.html:194
msgid "Current Priority"
msgstr ""

#: app/templates/tasks/edit.html:212
msgid "Currently Assigned To"
msgstr ""

#: app/templates/tasks/edit.html:224
msgid "Current Due Date"
msgstr ""

#: app/templates/tasks/edit.html:238
msgid "Current Estimate"
msgstr ""

#: app/templates/tasks/edit.html:250 app/templates/weekly_goals/index.html:87
#: app/templates/weekly_goals/view.html:47
msgid "Actual Hours"
msgstr ""

#: app/templates/tasks/edit.html:265
msgid "Started"
msgstr ""

#: app/templates/tasks/edit.html:299
msgid "Edit Tips"
msgstr ""

#: app/templates/tasks/edit.html:308
msgid "Status Changes"
msgstr ""

#: app/templates/tasks/edit.html:309
msgid "Changing status may affect time tracking and progress calculations"
msgstr ""

#: app/templates/tasks/edit.html:320
msgid "Due Date Updates"
msgstr ""

#: app/templates/tasks/edit.html:321
msgid "Consider team workload when adjusting deadlines"
msgstr ""

#: app/templates/tasks/edit.html:332
msgid "Assignment Changes"
msgstr ""

#: app/templates/tasks/edit.html:333
msgid "Notify team members when reassigning tasks"
msgstr ""

#: app/templates/tasks/edit.html:599
msgid "Updating..."
msgstr ""

#: app/templates/tasks/list.html:33
msgid "Filter Tasks"
msgstr ""

#: app/templates/tasks/list.html:46 app/templates/tasks/my_tasks.html:125
msgid "e.g. bug, frontend"
msgstr ""

#: app/templates/tasks/list.html:139
msgid "Delete Selected Tasks"
msgstr ""

#: app/templates/tasks/list.html:159
msgid "Change Status for Selected Tasks"
msgstr ""

#: app/templates/tasks/list.html:187
msgid "Assign Selected Tasks"
msgstr ""

#: app/templates/tasks/list.html:197
msgid "Assign Tasks"
msgstr ""

#: app/templates/tasks/list.html:207
msgid "Move Selected Tasks to Project"
msgstr ""

#: app/templates/tasks/list.html:208 app/templates/tasks/list.html:210
msgid "Select Project"
msgstr ""

#: app/templates/tasks/list.html:217
msgid "Move Tasks"
msgstr ""

#: app/templates/tasks/list.html:237
#, python-brace-format
msgid "Are you sure you want to delete the task \"{name}\"?"
msgstr ""

#: app/templates/tasks/list.html:238
#, python-brace-format
msgid "Cannot delete task \"{name}\" because it has time entries. Please delete the time entries first."
msgstr ""

#: app/templates/tasks/list.html:421 app/templates/tasks/view.html:39
msgid "Delete Task"
msgstr ""

#: app/templates/tasks/my_tasks.html:3 app/templates/tasks/my_tasks.html:23
msgid "My Tasks"
msgstr ""

#: app/templates/tasks/my_tasks.html:23
msgid "Tasks assigned to or created by you"
msgstr ""

#: app/templates/tasks/my_tasks.html:23
msgid "total"
msgstr ""

#: app/templates/tasks/my_tasks.html:105
msgid "Filter My Tasks"
msgstr ""

#: app/templates/tasks/my_tasks.html:119
msgid "Task name or description"
msgstr ""

#: app/templates/tasks/my_tasks.html:141
msgid "All Priorities"
msgstr ""

#: app/templates/tasks/my_tasks.html:160
msgid "Task Type"
msgstr ""

#: app/templates/tasks/my_tasks.html:163
msgid "Assigned to Me"
msgstr ""

#: app/templates/tasks/my_tasks.html:164
msgid "Created by Me"
msgstr ""

#: app/templates/tasks/my_tasks.html:171
msgid "Show overdue only"
msgstr ""

#: app/templates/tasks/my_tasks.html:302
msgid "Created by me"
msgstr ""

#: app/templates/tasks/my_tasks.html:353
msgid "My tasks pagination"
msgstr ""

#: app/templates/tasks/my_tasks.html:376
msgid "..."
msgstr ""

#: app/templates/tasks/my_tasks.html:400
msgid "No tasks found"
msgstr ""

#: app/templates/tasks/my_tasks.html:401
msgid "You don't have any tasks assigned to you or created by you yet."
msgstr ""

#: app/templates/tasks/my_tasks.html:404
msgid "Create Your First Task"
msgstr ""

#: app/templates/tasks/my_tasks.html:407 app/templates/tasks/overdue.html:102
msgid "View All Tasks"
msgstr ""

#: app/templates/tasks/overdue.html:4 app/templates/tasks/overdue.html:9
#: app/templates/tasks/overdue.html:19
msgid "Overdue Tasks"
msgstr ""

#: app/templates/tasks/overdue.html:20
msgid "Requires immediate attention"
msgstr ""

#: app/templates/tasks/overdue.html:20
msgid "items"
msgstr ""

#: app/templates/tasks/overdue.html:26
msgid "There are"
msgstr ""

#: app/templates/tasks/overdue.html:26
msgid "overdue tasks that require immediate attention. Please review and update these tasks to prevent further delays."
msgstr ""

#: app/templates/tasks/overdue.html:55
msgid "Due:"
msgstr ""

#: app/templates/tasks/overdue.html:56
msgid "Est:"
msgstr ""

#: app/templates/tasks/overdue.html:57
msgid "Actual:"
msgstr ""

#: app/templates/tasks/overdue.html:85
#: app/templates/timer/_time_entries_list.html:16
msgid "Bulk Actions"
msgstr ""

#: app/templates/tasks/overdue.html:89
msgid "Update Due Dates"
msgstr ""

#: app/templates/tasks/overdue.html:90
msgid "Extend due dates for multiple tasks at once"
msgstr ""

#: app/templates/tasks/overdue.html:91
msgid "Extend Due Dates"
msgstr ""

#: app/templates/tasks/overdue.html:94
msgid "Priority Management"
msgstr ""

#: app/templates/tasks/overdue.html:95
msgid "Adjust priorities for overdue tasks"
msgstr ""

#: app/templates/tasks/overdue.html:96
msgid "Adjust Priorities"
msgstr ""

#: app/templates/tasks/overdue.html:104
msgid "No Overdue Tasks!"
msgstr ""

#: app/templates/tasks/overdue.html:104
msgid "Great job! All tasks are currently on schedule."
msgstr ""

#: app/templates/tasks/overdue.html:109
msgid "Enter new due date (YYYY-MM-DD):"
msgstr ""

#: app/templates/tasks/overdue.html:110
msgid "Are you sure you want to extend the due date to"
msgstr ""

#: app/templates/tasks/overdue.html:111 app/templates/tasks/overdue.html:114
msgid "for all overdue tasks?"
msgstr ""

#: app/templates/tasks/overdue.html:112
msgid "Enter new priority (low/medium/high/urgent):"
msgstr ""

#: app/templates/tasks/overdue.html:113
msgid "Are you sure you want to set priority to"
msgstr ""

#: app/templates/tasks/overdue.html:115
msgid "Invalid priority. Please use: low, medium, high, or urgent"
msgstr ""

#: app/templates/tasks/overdue.html:116
#, python-format
msgid "Updated %(count)s task(s). Reloading..."
msgstr ""

#: app/templates/tasks/overdue.html:117
msgid "Update failed. Please try again."
msgstr ""

#: app/templates/tasks/view.html:14
msgid "Start task and mark as In Progress?"
msgstr ""

#: app/templates/tasks/view.html:14 app/templates/tasks/view.html:21
msgid "Change Task Status"
msgstr ""

#: app/templates/tasks/view.html:21
msgid "Mark task as To Do?"
msgstr ""

#: app/templates/tasks/view.html:27
msgid "Mark task as Done?"
msgstr ""

#: app/templates/tasks/view.html:27
msgid "Complete Task"
msgstr ""

#: app/templates/tasks/view.html:27
msgid "Complete"
msgstr ""

#: app/templates/tasks/view.html:34
msgid "Reopen task to Review?"
msgstr ""

#: app/templates/tasks/view.html:34
msgid "Reopen Task"
msgstr ""

#: app/templates/tasks/view.html:34
msgid "Reopen"
msgstr ""

#: app/templates/tasks/view.html:47
msgid "Task details and history."
msgstr ""

#: app/templates/time_entry_templates/create.html:13
msgid "Create Time Entry Template"
msgstr ""

#: app/templates/time_entry_templates/create.html:33
#: app/templates/time_entry_templates/edit.html:33
msgid "e.g., Daily Standup, Client Meeting"
msgstr ""

#: app/templates/time_entry_templates/create.html:82
#: app/templates/time_entry_templates/edit.html:86
msgid "e.g., 1.0, 0.5"
msgstr ""

#: app/templates/time_entry_templates/create.html:97
#: app/templates/time_entry_templates/edit.html:101
msgid "Pre-fill notes for this type of time entry"
msgstr ""

#: app/templates/time_entry_templates/create.html:110
#: app/templates/time_entry_templates/edit.html:114
msgid "e.g., meeting, development, admin"
msgstr ""

#: app/templates/time_entry_templates/edit.html:13
msgid "Edit Template"
msgstr ""

#: app/templates/time_entry_templates/list.html:44
#: app/templates/time_entry_templates/view.html:144
msgid "Are you sure you want to delete this template?"
msgstr ""

#: app/templates/time_entry_templates/list.html:44
#: app/templates/time_entry_templates/view.html:144
msgid "Delete Template"
msgstr ""

#: app/templates/time_entry_templates/list.html:111
msgid "Create Your First Template"
msgstr ""

#: app/templates/time_entry_templates/list.html:114
msgid "No templates yet"
msgstr ""

#: app/templates/time_entry_templates/list.html:115
msgid "Create your first time entry template to speed up your workflow."
msgstr ""

#: app/templates/time_entry_templates/view.html:96
msgid "Usage Statistics"
msgstr ""

#: app/templates/timer/_time_entries_list.html:7
msgid "Select All"
msgstr ""

#: app/templates/timer/_time_entries_list.html:10
msgid "selected"
msgstr ""

#: app/templates/timer/_time_entries_list.html:19
msgid "Mark Paid/Unpaid"
msgstr ""

#: app/templates/timer/_time_entries_list.html:38
#: app/templates/timer/_time_entries_list.html:67
#: app/templates/timer/time_entries_export_pdf.html:16
msgid "Project/Client"
msgstr ""

#: app/templates/timer/_time_entries_list.html:43
#: app/templates/timer/_time_entries_list.html:131
msgid "Invoice Ref"
msgstr ""

#: app/templates/timer/_time_entries_list.html:98
#: app/templates/timer/_time_entries_list.html:109
msgid "Click to edit"
msgstr ""

#: app/templates/timer/_time_entries_list.html:102
msgid "Stop the timer to edit duration"
msgstr ""

#: app/templates/timer/_time_entries_list.html:186
#: app/templates/timer/_time_entries_list.html:188
#: app/templates/timer/view_timer.html:108
msgid "Request approval"
msgstr ""

#: app/templates/timer/_time_entries_list.html:201
msgid "Clear filters"
msgstr ""

#: app/templates/timer/_time_entries_list.html:204
msgid "No time entries match your filters"
msgstr ""

#: app/templates/timer/_time_entries_list.html:204
msgid "Try adjusting your filters or clear them to see all entries. You can also log a new time entry."
msgstr ""

#: app/templates/timer/_time_entries_list.html:211
msgid "No time entries yet"
msgstr ""

#: app/templates/timer/_time_entries_list.html:211
msgid "Log time to see your entries here. Use the timer on the dashboard or log time manually."
msgstr ""

#: app/templates/timer/_time_entries_list.html:222
msgid "Time entries pagination"
msgstr ""

#: app/templates/timer/bulk_entry.html:3 app/templates/timer/bulk_entry.html:77
msgid "Bulk Time Entry"
msgstr ""

#: app/templates/timer/bulk_entry.html:74
msgid "Single Entry"
msgstr ""

#: app/templates/timer/bulk_entry.html:77
msgid "Create multiple time entries for consecutive days"
msgstr ""

#: app/templates/timer/bulk_entry.html:86
msgid "Bulk Entry Form"
msgstr ""

#: app/templates/timer/bulk_entry.html:110
msgid "Select the project to log time for"
msgstr ""

#: app/templates/timer/bulk_entry.html:122
#: app/templates/timer/manual_entry.html:83
msgid "Tasks load after selecting a project"
msgstr ""

#: app/templates/timer/bulk_entry.html:133
#: app/templates/timer/bulk_entry.html:246
msgid "Date Range"
msgstr ""

#: app/templates/timer/bulk_entry.html:148
msgid "Skip weekends (Saturday & Sunday)"
msgstr ""

#: app/templates/timer/bulk_entry.html:155
msgid "Entries will be created for these dates"
msgstr ""

#: app/templates/timer/bulk_entry.html:172
msgid "Same start time for all days"
msgstr ""

#: app/templates/timer/bulk_entry.html:181
msgid "Same end time for all days"
msgstr ""

#: app/templates/timer/bulk_entry.html:191
msgid "What did you work on? (same notes for all entries)"
msgstr ""

#: app/templates/timer/bulk_entry.html:200
msgid "tag1, tag2, tag3"
msgstr ""

#: app/templates/timer/bulk_entry.html:201
msgid "Separate tags with commas (same for all entries)"
msgstr ""

#: app/templates/timer/bulk_entry.html:211
msgid "Include in invoices"
msgstr ""

#: app/templates/timer/bulk_entry.html:223
msgid "Create Entries"
msgstr ""

#: app/templates/timer/bulk_entry.html:239
msgid "Bulk Entry Tips"
msgstr ""

#: app/templates/timer/bulk_entry.html:247
msgid "Select start and end dates. Entries will be created for each day in the range."
msgstr ""

#: app/templates/timer/bulk_entry.html:253
msgid "Skip Weekends"
msgstr ""

#: app/templates/timer/bulk_entry.html:254
msgid "Enable to automatically skip Saturdays and Sundays from the date range."
msgstr ""

#: app/templates/timer/bulk_entry.html:260
msgid "Same Time Daily"
msgstr ""

#: app/templates/timer/bulk_entry.html:261
msgid "All entries will use the same start and end time each day."
msgstr ""

#: app/templates/timer/bulk_entry.html:267
msgid "Conflict Check"
msgstr ""

#: app/templates/timer/bulk_entry.html:268
msgid "System will check for existing time entries and prevent overlaps."
msgstr ""

#: app/templates/timer/bulk_entry.html:334
#: app/templates/timer/manual_entry.html:348
#: app/templates/timer/timer_page.html:264
msgid "Failed to load tasks"
msgstr ""

#: app/templates/timer/bulk_entry.html:335
msgid "Total days"
msgstr ""

#: app/templates/timer/bulk_entry.html:336
msgid "Weekdays only"
msgstr ""

#: app/templates/timer/bulk_entry.html:338
msgid "Entries will be created for"
msgstr ""

#: app/templates/timer/calendar.html:35
msgid "Agenda"
msgstr ""

#: app/templates/timer/calendar.html:52
msgid "iCal Format"
msgstr ""

#: app/templates/timer/calendar.html:53
msgid "CSV Format"
msgstr ""

#: app/templates/timer/calendar.html:72
msgid "Filter by tags..."
msgstr ""

#: app/templates/timer/calendar.html:75
msgid "Show billable entries only"
msgstr ""

#: app/templates/timer/calendar.html:76
msgid "Billable Only"
msgstr ""

#: app/templates/timer/calendar.html:84
msgid "Assign to project for new events..."
msgstr ""

#: app/templates/timer/calendar.html:92
msgid "Total Hours:"
msgstr ""

#: app/templates/timer/calendar.html:129 app/templates/timer/calendar.html:1239
msgid "Colors assigned by project"
msgstr ""

#: app/templates/timer/calendar.html:142
msgid "Create Time Entry"
msgstr ""

#: app/templates/timer/calendar.html:150
msgid "Select a project..."
msgstr ""

#: app/templates/timer/calendar.html:249
msgid "Recurring Time Blocks"
msgstr ""

#: app/templates/timer/calendar.html:253
msgid "Manage your recurring time entry templates."
msgstr ""

#: app/templates/timer/calendar.html:261
msgid "New Recurring Block"
msgstr ""

#: app/templates/timer/calendar.html:280
msgid "Jump to Today"
msgstr ""

#: app/templates/timer/calendar.html:284
msgid "Next Week/Month"
msgstr ""

#: app/templates/timer/calendar.html:288
msgid "Previous Week/Month"
msgstr ""

#: app/templates/timer/calendar.html:292
msgid "Navigate Days"
msgstr ""

#: app/templates/timer/calendar.html:297
msgid "Views"
msgstr ""

#: app/templates/timer/calendar.html:300
msgid "Day View"
msgstr ""

#: app/templates/timer/calendar.html:304
msgid "Week View"
msgstr ""

#: app/templates/timer/calendar.html:308
msgid "Month View"
msgstr ""

#: app/templates/timer/calendar.html:312
msgid "Agenda View"
msgstr ""

#: app/templates/timer/calendar.html:320
msgid "Create New Entry"
msgstr ""

#: app/templates/timer/calendar.html:324
msgid "Focus Filter"
msgstr ""

#: app/templates/timer/calendar.html:328
msgid "Clear All Filters"
msgstr ""

#: app/templates/timer/calendar.html:332
msgid "Close Modal"
msgstr ""

#: app/templates/timer/calendar.html:340
msgid "Show This Help"
msgstr ""

#: app/templates/timer/calendar.html:346
msgid "Got it!"
msgstr ""

#: app/templates/timer/calendar.html:422
msgid "Failed to load events"
msgstr ""

#: app/templates/timer/calendar.html:436
msgid "Please select a project for new entries"
msgstr ""

#: app/templates/timer/calendar.html:529
msgid "Please select a project first"
msgstr ""

#: app/templates/timer/calendar.html:599
msgid "Showing billable entries only"
msgstr ""

#: app/templates/timer/calendar.html:734
msgid "Entry created successfully"
msgstr ""

#: app/templates/timer/calendar.html:744
msgid "Failed to create entry"
msgstr ""

#: app/templates/timer/calendar.html:767
msgid "Entry updated"
msgstr ""

#: app/templates/timer/calendar.html:771
msgid "Failed to update entry"
msgstr ""

#: app/templates/timer/calendar.html:828
msgid "Are you sure you want to delete this entry?"
msgstr ""

#: app/templates/timer/calendar.html:829
msgid "Delete Entry"
msgstr ""

#: app/templates/timer/calendar.html:890
msgid "Automatic Timer"
msgstr ""

#: app/templates/timer/calendar.html:931
msgid "Entry deleted"
msgstr ""

#: app/templates/timer/calendar.html:937
msgid "Failed to delete entry"
msgstr ""

#: app/templates/timer/calendar.html:955
msgid "Export started"
msgstr ""

#: app/templates/timer/calendar.html:966
msgid "No recurring blocks yet"
msgstr ""

#: app/templates/timer/calendar.html:979
msgid "Unknown Project"
msgstr ""

#: app/templates/timer/calendar.html:997
msgid "Failed to load recurring blocks"
msgstr ""

#: app/templates/timer/calendar.html:1039
msgid "No events in this period"
msgstr ""

#: app/templates/timer/calendar.html:1072
msgid "Failed to load agenda view"
msgstr ""

#: app/templates/timer/calendar.html:1104
msgid "Failed to load event details"
msgstr ""

#: app/templates/timer/calendar.html:1115
msgid "Are you sure you want to delete this recurring block?"
msgstr ""

#: app/templates/timer/calendar.html:1117
msgid "Delete Recurring Block"
msgstr ""

#: app/templates/timer/calendar.html:1133
msgid "Recurring block deleted"
msgstr ""

#: app/templates/timer/calendar.html:1136
msgid "Failed to delete recurring block"
msgstr ""

#: app/templates/timer/calendar.html:1147
msgid "Enter new start time (YYYY-MM-DD HH:MM):"
msgstr ""

#: app/templates/timer/calendar.html:1180
msgid "Entry duplicated successfully"
msgstr ""

#: app/templates/timer/calendar.html:1186
msgid "Failed to duplicate entry"
msgstr ""

#: app/templates/timer/calendar.html:1329
msgid "Jumped to today"
msgstr ""

#: app/templates/timer/calendar.html:1413
msgid "💡 Press ? to see keyboard shortcuts"
msgstr ""

#: app/templates/timer/edit_timer.html:3
#: app/templates/timer/edit_timer.html:180
msgid "Edit Time Entry"
msgstr ""

#: app/templates/timer/edit_timer.html:104
msgid "These updates will modify this time entry permanently."
msgstr ""

#: app/templates/timer/edit_timer.html:106
msgid "Confirm Changes"
msgstr ""

#: app/templates/timer/edit_timer.html:107
msgid "Confirm & Save"
msgstr ""

#: app/templates/timer/edit_timer.html:188
msgid "Admin Mode"
msgstr ""

#: app/templates/timer/edit_timer.html:204
msgid "Admin Mode:"
msgstr ""

#: app/templates/timer/edit_timer.html:204
msgid "You can edit all fields of this time entry, including project, task, start/end times, and source."
msgstr ""

#: app/templates/timer/edit_timer.html:215
msgid "You can edit this entry's project, task, start and end times, and break."
msgstr ""

#: app/templates/timer/edit_timer.html:238
msgid "Select the project this time entry belongs to"
msgstr ""

#: app/templates/timer/edit_timer.html:242
msgid "Task (Optional)"
msgstr ""

#: app/templates/timer/edit_timer.html:252
msgid "Select a specific task within the project"
msgstr ""

#: app/templates/timer/edit_timer.html:264
msgid "When the work started"
msgstr ""

#: app/templates/timer/edit_timer.html:272
msgid "Time the work started"
msgstr ""

#: app/templates/timer/edit_timer.html:284
msgid "When the work ended (leave empty if still running)"
msgstr ""

#: app/templates/timer/edit_timer.html:292
msgid "Time the work ended"
msgstr ""

#: app/templates/timer/edit_timer.html:300
msgid "Break duration (HH:MM). Subtracted from total to get worked duration."
msgstr ""

#: app/templates/timer/edit_timer.html:313
#: app/templates/timer/edit_timer.html:439
msgid "Automatic"
msgstr ""

#: app/templates/timer/edit_timer.html:315
msgid "How this entry was created"
msgstr ""

#: app/templates/timer/edit_timer.html:328
#: app/templates/timer/edit_timer.html:431
msgid "Duration:"
msgstr ""

#: app/templates/timer/edit_timer.html:340
#: app/templates/timer/edit_timer.html:451
#: app/templates/timer/edit_timer.html:606
msgid "Describe what you worked on"
msgstr ""

#: app/templates/timer/edit_timer.html:350
#: app/templates/timer/edit_timer.html:462
#: app/templates/timer/manual_entry.html:149
msgid "tag1, tag2"
msgstr ""

#: app/templates/timer/edit_timer.html:351
#: app/templates/timer/edit_timer.html:463
msgid "Separate tags with commas"
msgstr ""

#: app/templates/timer/edit_timer.html:368
#: app/templates/timer/edit_timer.html:489
msgid "Internal invoice reference"
msgstr ""

#: app/templates/timer/edit_timer.html:369
#: app/templates/timer/edit_timer.html:490
msgid "Reference to internal invoice number"
msgstr ""

#: app/templates/timer/edit_timer.html:376
#: app/templates/timer/edit_timer.html:497
msgid "Reason for Change"
msgstr ""

#: app/templates/timer/edit_timer.html:376
#: app/templates/timer/edit_timer.html:497
#: app/templates/timer/time_entries_overview.html:175
msgid "Optional but recommended"
msgstr ""

#: app/templates/timer/edit_timer.html:378
#: app/templates/timer/edit_timer.html:499
msgid "e.g., Corrected duration, updated project assignment, etc."
msgstr ""

#: app/templates/timer/edit_timer.html:379
#: app/templates/timer/edit_timer.html:500
msgid "Explain why you are making these changes"
msgstr ""

#: app/templates/timer/edit_timer.html:412
msgid "Task:"
msgstr ""

#: app/templates/timer/edit_timer.html:417
msgid "Start:"
msgstr ""

#: app/templates/timer/edit_timer.html:421
msgid "End:"
msgstr ""

#: app/templates/timer/edit_timer.html:525
#: app/templates/timer/view_timer.html:24
msgid "Entry Details"
msgstr ""

#: app/templates/timer/edit_timer.html:547
msgid "Admin Notice"
msgstr ""

#: app/templates/timer/edit_timer.html:550
msgid "As an admin, you have full editing privileges for this time entry. Changes will be logged for audit purposes."
msgstr ""

#: app/templates/timer/manual_entry.html:8
msgid "Duplicate Entry"
msgstr ""

#: app/templates/timer/manual_entry.html:13
msgid "Duplicate Time Entry"
msgstr ""

#: app/templates/timer/manual_entry.html:13
msgid "Log Time Manually"
msgstr ""

#: app/templates/timer/manual_entry.html:14
msgid "Create a copy of a previous entry with new times"
msgstr ""

#: app/templates/timer/manual_entry.html:14
msgid "Create a new time entry"
msgstr ""

#: app/templates/timer/manual_entry.html:25
msgid "Duplicating entry:"
msgstr ""

#: app/templates/timer/manual_entry.html:33
msgid "Original:"
msgstr ""

#: app/templates/timer/manual_entry.html:33
msgid "to"
msgstr ""

#: app/templates/timer/manual_entry.html:57
msgid "Project & task"
msgstr ""

#: app/templates/timer/manual_entry.html:92
msgid "Date & time"
msgstr ""

#: app/templates/timer/manual_entry.html:117
msgid "Worked Time"
msgstr ""

#: app/templates/timer/manual_entry.html:119
msgid "Optional: enter HH:MM for duration. You can combine with Start Date/Time to log time on a specific day."
msgstr ""

#: app/templates/timer/manual_entry.html:125
msgid "Suggest break based on duration (e.g. >6h: 30 min, >9h: 45 min)"
msgstr ""

#: app/templates/timer/manual_entry.html:125
msgid "Suggest"
msgstr ""

#: app/templates/timer/manual_entry.html:127
msgid "Optional: break duration (HH:MM). Subtracted from total time to get worked duration."
msgstr ""

#: app/templates/timer/manual_entry.html:398
msgid "Session may have expired. Please refresh the page and try again."
msgstr ""

#: app/templates/timer/manual_entry.html:410
msgid "Project not found or inactive"
msgstr ""

#: app/templates/timer/manual_entry.html:780
msgid "What did you work on?"
msgstr ""

#: app/templates/timer/time_entries_export_pdf.html:2
#: app/templates/timer/time_entries_export_pdf.html:5
msgid "Time Entries Export"
msgstr ""

#: app/templates/timer/time_entries_export_pdf.html:7
msgid "Generated at"
msgstr ""

#: app/templates/timer/time_entries_overview.html:15
msgid "View and manage all time entries"
msgstr ""

#: app/templates/timer/time_entries_overview.html:24
msgid "Paid Hours"
msgstr ""

#: app/templates/timer/time_entries_overview.html:34
#: app/templates/timer/time_entries_overview.html:35
#: app/templates/timer/time_entries_overview.html:134
msgid "Apply filters"
msgstr ""

#: app/templates/timer/time_entries_overview.html:58
msgid "Toggle filters"
msgstr ""

#: app/templates/timer/time_entries_overview.html:102
msgid "Paid Status"
msgstr ""

#: app/templates/timer/time_entries_overview.html:110
msgid "Billable Status"
msgstr ""

#: app/templates/timer/time_entries_overview.html:119
msgid "Search in notes and tags..."
msgstr ""

#: app/templates/timer/time_entries_overview.html:171
msgid "Delete Selected Time Entries"
msgstr ""

#: app/templates/timer/time_entries_overview.html:175
msgid "Reason for Deletion"
msgstr ""

#: app/templates/timer/time_entries_overview.html:177
msgid "e.g., Duplicate entry, incorrect time, etc."
msgstr ""

#: app/templates/timer/time_entries_overview.html:195
msgid "Mark Selected Entries as Paid/Unpaid"
msgstr ""

#: app/templates/timer/time_entries_overview.html:203
msgid "e.g., Invoice number or payment reference"
msgstr ""

#: app/templates/timer/time_entries_overview.html:322
#: app/templates/timer/time_entries_overview.html:384
msgid "Please select at least one time entry"
msgstr ""

#: app/templates/timer/time_entries_overview.html:388
msgid "time entry/entries"
msgstr ""

#: app/templates/timer/timer_page.html:13
msgid "Track your time with a visual timer"
msgstr ""

#: app/templates/timer/timer_page.html:100
msgid "Estimated Completion"
msgstr ""

#: app/templates/timer/timer_page.html:102
msgid "Calculating..."
msgstr ""

#: app/templates/timer/timer_page.html:105
msgid "Based on average session duration"
msgstr ""

#: app/templates/timer/timer_page.html:122
msgid "No active timer. Start one below!"
msgstr ""

#: app/templates/timer/timer_page.html:130
msgid "Start New Timer"
msgstr ""

#: app/templates/timer/timer_page.html:171
msgid "Add notes about what you're working on..."
msgstr ""

#: app/templates/timer/timer_page.html:177
msgid "Or use a template"
msgstr ""

#: app/templates/timer/timer_page.html:220
msgid "Recent Projects"
msgstr ""

#: app/templates/timer/timer_page.html:238
msgid "Today's Stats"
msgstr ""

#: app/templates/timer/view_timer.html:9
msgid "View Entry"
msgstr ""

#: app/templates/timer/view_timer.html:15
msgid "View time entry details"
msgstr ""

#: app/templates/timer/view_timer.html:67
msgid "Project & Client"
msgstr ""

#: app/templates/timer/view_timer.html:104
msgid "Approval"
msgstr ""

#: app/templates/timer/view_timer.html:115
msgid "Status & Billing"
msgstr ""

#: app/templates/user/license.html:8
msgid "Supporter badge: confirm your key and thank you for funding development."
msgstr ""

#: app/templates/user/license.html:12
msgid "License status"
msgstr ""

#: app/templates/user/license.html:16
msgid "Supporter license active"
msgstr ""

#: app/templates/user/license.html:18
msgid "Thank you for supporting TimeTracker. Your badge confirms this instance as a supporter — no features are locked."
msgstr ""

#: app/templates/user/license.html:22
msgid "Not activated"
msgstr ""

#: app/templates/user/license.html:25
msgid "Purchase a supporter license (€25) to unlock the supporter badge for this instance. The app stays fully free either way."
msgstr ""

#: app/templates/user/license.html:35
msgid "Enter license key"
msgstr ""

#: app/templates/user/license.html:36
msgid "Paste the license key you received by email after purchase."
msgstr ""

#: app/templates/user/license.html:40
msgid "License key"
msgstr ""

#: app/templates/user/license.html:43
msgid "Paste your key here"
msgstr ""

#: app/templates/user/license.html:46
msgid "Validate"
msgstr ""

#: app/templates/user/license.html:50
msgid "Need a key?"
msgstr ""

#: app/templates/user/license.html:51
msgid "Purchase a license key"
msgstr ""

#: app/templates/user/license.html:57
msgid "Back to Settings"
msgstr ""

#: app/templates/user/profile.html:2
msgid "Profile"
msgstr ""

#: app/templates/user/profile.html:106
msgid "In progress"
msgstr ""

#: app/templates/user/profile.html:120
msgid "View all time entries"
msgstr ""

#: app/templates/user/profile.html:124
msgid "No recent time entries"
msgstr ""

#: app/templates/user/settings.html:8
msgid "Manage your account settings and preferences"
msgstr ""

#: app/templates/user/settings.html:14
msgid "Support & Community"
msgstr ""

#: app/templates/user/settings.html:19
msgid "TimeTracker is free and open source. Funding comes from optional donations and supporter licenses — never from locking features."
msgstr ""

#: app/templates/user/settings.html:21
msgid "This instance already has a supporter license. Thank you — you can still donate or share the app anytime."
msgstr ""

#: app/templates/user/settings.html:23
msgid "If the app saves you time, you can donate or buy a supporter license (€25). A license shows a Supporter badge; it does not change what you can use."
msgstr ""

#: app/templates/user/settings.html:27
msgid "License & supporter key"
msgstr ""

#: app/templates/user/settings.html:28
msgid "Checkout on timetracker.drytrix.com"
msgstr ""

#: app/templates/user/settings.html:40
msgid "Profile Information"
msgstr ""

#: app/templates/user/settings.html:53
msgid "Username cannot be changed"
msgstr ""

#: app/templates/user/settings.html:71
msgid "Required for email notifications"
msgstr ""

#: app/templates/user/settings.html:81
msgid "Notification Preferences"
msgstr ""

#: app/templates/user/settings.html:93
msgid "Enable Email Notifications"
msgstr ""

#: app/templates/user/settings.html:94
msgid "Master switch for all email notifications"
msgstr ""

#: app/templates/user/settings.html:104
msgid "Overdue Invoice Notifications"
msgstr ""

#: app/templates/user/settings.html:113
msgid "Task Assignment Notifications"
msgstr ""

#: app/templates/user/settings.html:122
msgid "Comment & Mention Notifications"
msgstr ""

#: app/templates/user/settings.html:131
msgid "Weekly Time Summary Email"
msgstr ""

#: app/templates/user/settings.html:140
msgid "Remind me to log time at end of day"
msgstr ""

#: app/templates/user/settings.html:144
msgid "Reminder time (your timezone)"
msgstr ""

#: app/templates/user/settings.html:149
msgid "In-app reminders (toasts)"
msgstr ""

#: app/templates/user/settings.html:155
msgid "Enable smart notifications on this device"
msgstr ""

#: app/templates/user/settings.html:163
msgid "Nudge when no time logged today (uses hour from app settings or override below)"
msgstr ""

#: app/templates/user/settings.html:169
msgid "Alert when a timer runs longer than the configured threshold"
msgstr ""

#: app/templates/user/settings.html:175
msgid "End-of-day summary (logged hours today)"
msgstr ""

#: app/templates/user/settings.html:181
msgid "Also use browser notifications when permission is granted"
msgstr ""

#: app/templates/user/settings.html:185
msgid "No-tracking nudge hour (optional override, HH:MM)"
msgstr ""

#: app/templates/user/settings.html:191
msgid "Summary hour (optional override, HH:MM)"
msgstr ""

#: app/templates/user/settings.html:207
msgid "Display Preferences"
msgstr ""

#: app/templates/user/settings.html:219 app/templates/user/settings.html:231
#: app/templates/user/settings.html:423
msgid "System Default"
msgstr ""

#: app/templates/user/settings.html:245
msgid "Time Rounding Preferences"
msgstr ""

#: app/templates/user/settings.html:251
msgid "Configure how your time entries are rounded. This affects how durations are calculated when you stop timers."
msgstr ""

#: app/templates/user/settings.html:261
msgid "Enable Time Rounding"
msgstr ""

#: app/templates/user/settings.html:262
msgid "Round time entries to configured intervals"
msgstr ""

#: app/templates/user/settings.html:269
msgid "Rounding Interval"
msgstr ""

#: app/templates/user/settings.html:277
msgid "Time entries will be rounded to this interval"
msgstr ""

#: app/templates/user/settings.html:282
msgid "Rounding Method"
msgstr ""

#: app/templates/user/settings.html:312
msgid "Overtime Settings"
msgstr ""

#: app/templates/user/settings.html:318
msgid "Choose whether overtime is calculated per day or per week, and set your standard hours accordingly."
msgstr ""

#: app/templates/user/settings.html:322
msgid "Calculate overtime by"
msgstr ""

#: app/templates/user/settings.html:328
msgid "Daily hours"
msgstr ""

#: app/templates/user/settings.html:334
msgid "Weekly hours"
msgstr ""

#: app/templates/user/settings.html:342
msgid "Standard Hours Per Day"
msgstr ""

#: app/templates/user/settings.html:351
msgid "Typically 8 hours for a full-time job"
msgstr ""

#: app/templates/user/settings.html:357
msgid "Standard Hours Per Week"
msgstr ""

#: app/templates/user/settings.html:366
msgid "e.g. 20 for a part-time week, 40 for full-time"
msgstr ""

#: app/templates/user/settings.html:373 app/templates/user/settings.html:383
msgid "How it works"
msgstr ""

#: app/templates/user/settings.html:376
msgid "If you work more than your standard hours in a day, the extra time will be tracked as overtime in reports and analytics."
msgstr ""

#: app/templates/user/settings.html:386
msgid "Overtime is calculated per week: any hours beyond your standard hours per week count as overtime. Suited for contracts based on weekly hours."
msgstr ""

#: app/templates/user/settings.html:396
msgid "Count weekend hours in overtime"
msgstr ""

#: app/templates/user/settings.html:398
msgid "When unchecked, any hours worked on Saturday or Sunday are always counted as overtime."
msgstr ""

#: app/templates/user/settings.html:410
msgid "Regional Settings"
msgstr ""

#: app/templates/user/settings.html:436 app/templates/user/settings.html:450
msgid "Use system default"
msgstr ""

#: app/templates/user/settings.html:446
msgid "Time Format"
msgstr ""

#: app/templates/user/settings.html:458
msgid "Week Starts On"
msgstr ""

#: app/templates/user/settings.html:462
msgid "Sunday"
msgstr ""

#: app/templates/user/settings.html:463
msgid "Monday"
msgstr ""

#: app/templates/user/settings.html:464
msgid "Saturday"
msgstr ""

#: app/templates/user/settings.html:470
msgid "Calendar default view"
msgstr ""

#: app/templates/user/settings.html:474
msgid "Remember last view"
msgstr ""

#: app/templates/user/settings.html:485
msgid "Support visibility (hiding donate/support UI) is configured system-wide by administrators in Admin → Settings."
msgstr ""

#: app/templates/user/settings.html:486
msgid "Administrators can purchase a key to hide these prompts:"
msgstr ""

#: app/templates/user/settings.html:487
msgid "Support & Purchase Key"
msgstr ""

#: app/templates/user/settings.html:564
msgid "Time rounding is disabled. All times will be recorded exactly as tracked."
msgstr ""

#: app/templates/user/settings.html:569
msgid "No rounding - times will be recorded exactly as tracked."
msgstr ""

#: app/templates/user/settings.html:595
msgid "Actual time:"
msgstr ""

#: app/templates/user/settings.html:595
msgid "Rounded:"
msgstr ""

#: app/templates/user/settings.html:596
msgid "With "
msgstr ""

#: app/templates/user/settings.html:596
msgid " minute intervals"
msgstr ""

#: app/templates/weekly_goals/create.html:3
msgid "Create Weekly Goal"
msgstr ""

#: app/templates/weekly_goals/create.html:11
msgid "Create Weekly Time Goal"
msgstr ""

#: app/templates/weekly_goals/create.html:14
msgid "Set a target for hours to work this week"
msgstr ""

#: app/templates/weekly_goals/create.html:26
#: app/templates/weekly_goals/edit.html:42
#: app/templates/weekly_goals/index.html:83
#: app/templates/weekly_goals/view.html:39
msgid "Target Hours"
msgstr ""

#: app/templates/weekly_goals/create.html:41
msgid "How many hours do you want to work this week?"
msgstr ""

#: app/templates/weekly_goals/create.html:48
msgid "Week Start Date"
msgstr ""

#: app/templates/weekly_goals/create.html:55
msgid "Leave blank to use current week (starting Monday)"
msgstr ""

#: app/templates/weekly_goals/create.html:71
#: app/templates/weekly_goals/edit.html:71
msgid "Exclude weekends (5-day work week)"
msgstr ""

#: app/templates/weekly_goals/create.html:74
#: app/templates/weekly_goals/edit.html:74
msgid "If checked, the goal will only count Monday through Friday. Week ends on Friday instead of Sunday."
msgstr ""

#: app/templates/weekly_goals/create.html:88
#: app/templates/weekly_goals/edit.html:103
msgid "Optional notes about your goal..."
msgstr ""

#: app/templates/weekly_goals/create.html:95
msgid "Quick Presets"
msgstr ""

#: app/templates/weekly_goals/create.html:143
msgid "Tips for Setting Goals"
msgstr ""

#: app/templates/weekly_goals/create.html:147
msgid "Be realistic: Consider holidays, meetings, and other commitments"
msgstr ""

#: app/templates/weekly_goals/create.html:148
msgid "Start conservative: You can always adjust your goal later"
msgstr ""

#: app/templates/weekly_goals/create.html:149
msgid "Track progress: Check your dashboard regularly to stay on track"
msgstr ""

#: app/templates/weekly_goals/create.html:150
msgid "Typical full-time: 40 hours per week (8 hours/day, 5 days)"
msgstr ""

#: app/templates/weekly_goals/create.html:151
msgid "Use \"Exclude weekends\" for a 5-day work week (Monday-Friday) instead of 7 days"
msgstr ""

#: app/templates/weekly_goals/edit.html:3
msgid "Edit Weekly Goal"
msgstr ""

#: app/templates/weekly_goals/edit.html:11
msgid "Edit Weekly Time Goal"
msgstr ""

#: app/templates/weekly_goals/edit.html:27
msgid "Week Period"
msgstr ""

#: app/templates/weekly_goals/edit.html:31
msgid "Current Progress"
msgstr ""

#: app/templates/weekly_goals/edit.html:115
msgid "Are you sure you want to delete this goal?"
msgstr ""

#: app/templates/weekly_goals/edit.html:115
msgid "Delete Goal"
msgstr ""

#: app/templates/weekly_goals/index.html:4
#: app/templates/weekly_goals/index.html:13
msgid "Weekly Time Goals"
msgstr ""

#: app/templates/weekly_goals/index.html:14
msgid "Set and track your weekly hour targets"
msgstr ""

#: app/templates/weekly_goals/index.html:16
msgid "New Goal"
msgstr ""

#: app/templates/weekly_goals/index.html:27
msgid "Total Goals"
msgstr ""

#: app/templates/weekly_goals/index.html:63
msgid "Success Rate"
msgstr ""

#: app/templates/weekly_goals/index.html:75
msgid "Current Week Goal"
msgstr ""

#: app/templates/weekly_goals/index.html:106
#: app/templates/weekly_goals/view.html:106
msgid "Remaining Hours"
msgstr ""

#: app/templates/weekly_goals/index.html:110
#: app/templates/weekly_goals/view.html:110
msgid "Days Remaining"
msgstr ""

#: app/templates/weekly_goals/index.html:114
#: app/templates/weekly_goals/view.html:114
msgid "Avg Hours/Day Needed"
msgstr ""

#: app/templates/weekly_goals/index.html:126
msgid "Edit Goal"
msgstr ""

#: app/templates/weekly_goals/index.html:139
msgid "No goal set for this week"
msgstr ""

#: app/templates/weekly_goals/index.html:142
msgid "Create a weekly time goal to start tracking your progress"
msgstr ""

#: app/templates/weekly_goals/index.html:158
msgid "Goal History"
msgstr ""

#: app/templates/weekly_goals/index.html:185
msgid "Target"
msgstr ""

#: app/templates/weekly_goals/view.html:3
#: app/templates/weekly_goals/view.html:12
msgid "Weekly Goal Details"
msgstr ""

#: app/templates/weekly_goals/view.html:18
msgid "5-day work week"
msgstr ""

#: app/templates/weekly_goals/view.html:124
msgid "Daily Breakdown"
msgstr ""

#: app/templates/weekly_goals/view.html:136
msgid "excluded"
msgstr ""

#: app/templates/weekly_goals/view.html:174
msgid "Time Entries This Week"
msgstr ""

#: app/templates/weekly_goals/view.html:188
msgid "No Project"
msgstr ""

#: app/templates/weekly_goals/view.html:224
msgid "No time entries recorded for this week yet"
msgstr ""

#: app/templates/workforce/dashboard.html:2
#: app/templates/workforce/dashboard.html:7
msgid "Workforce Governance"
msgstr ""

#: app/templates/workforce/dashboard.html:11
msgid "Reference date"
msgstr ""

#: app/templates/workforce/dashboard.html:14
msgid "Create/Get Period"
msgstr ""

#: app/templates/workforce/dashboard.html:29
msgid "Start date"
msgstr ""

#: app/templates/workforce/dashboard.html:33
msgid "End date"
msgstr ""

#: app/templates/workforce/dashboard.html:42
msgid "Exports"
msgstr ""

#: app/templates/workforce/dashboard.html:43
msgid "Download payroll, capacity, and compliance exports"
msgstr ""

#: app/templates/workforce/dashboard.html:46
msgid "Payroll CSV"
msgstr ""

#: app/templates/workforce/dashboard.html:47
msgid "Capacity CSV"
msgstr ""

#: app/templates/workforce/dashboard.html:49
msgid "Locked Periods CSV"
msgstr ""

#: app/templates/workforce/dashboard.html:50
msgid "Audit Events CSV"
msgstr ""

#: app/templates/workforce/dashboard.html:57
msgid "Timesheet Periods"
msgstr ""

#: app/templates/workforce/dashboard.html:70
msgid "Submit"
msgstr ""

#: app/templates/workforce/dashboard.html:101
msgid "No timesheet periods yet."
msgstr ""

#: app/templates/workforce/dashboard.html:107
msgid "Leave Balances"
msgstr ""

#: app/templates/workforce/dashboard.html:110
msgid "Accumulated overtime (YTD)"
msgstr ""

#: app/templates/workforce/dashboard.html:112
msgid "Take as paid leave"
msgstr ""

#: app/templates/workforce/dashboard.html:121
msgid "Allowance"
msgstr ""

#: app/templates/workforce/dashboard.html:122
msgid "Used"
msgstr ""

#: app/templates/workforce/dashboard.html:135
#: app/templates/workforce/dashboard.html:271
msgid "No leave types configured."
msgstr ""

#: app/templates/workforce/dashboard.html:145
msgid "Time-Off Requests"
msgstr ""

#: app/templates/workforce/dashboard.html:149
msgid "Select leave type"
msgstr ""

#: app/templates/workforce/dashboard.html:157
#: app/templates/workforce/dashboard.html:327
msgid "Requested hours"
msgstr ""

#: app/templates/workforce/dashboard.html:159
msgid "Available overtime (YTD)"
msgstr ""

#: app/templates/workforce/dashboard.html:164
msgid "Comment"
msgstr ""

#: app/templates/workforce/dashboard.html:165
msgid "Submit time-off request"
msgstr ""

#: app/templates/workforce/dashboard.html:203
msgid "Capacity"
msgstr ""

#: app/templates/workforce/dashboard.html:209
msgid "Expected"
msgstr ""

#: app/templates/workforce/dashboard.html:210
msgid "Allocated"
msgstr ""

#: app/templates/workforce/dashboard.html:211
msgid "Time Off"
msgstr ""

#: app/templates/workforce/dashboard.html:213
msgid "Utilization %"
msgstr ""

#: app/templates/workforce/dashboard.html:227
msgid "No capacity data available."
msgstr ""

#: app/templates/workforce/dashboard.html:238
msgid "Timesheet Policy"
msgstr ""

#: app/templates/workforce/dashboard.html:241
msgid "Auto lock days"
msgstr ""

#: app/templates/workforce/dashboard.html:242
msgid "Approver user IDs (comma separated)"
msgstr ""

#: app/templates/workforce/dashboard.html:243
msgid "Enable multi-level approval"
msgstr ""

#: app/templates/workforce/dashboard.html:244
msgid "Require rejection comment"
msgstr ""

#: app/templates/workforce/dashboard.html:245
msgid "Enable admin override"
msgstr ""

#: app/templates/workforce/dashboard.html:246
msgid "Save policy"
msgstr ""

#: app/templates/workforce/dashboard.html:251
msgid "Leave Types"
msgstr ""

#: app/templates/workforce/dashboard.html:256
msgid "Annual allowance (hours)"
msgstr ""

#: app/templates/workforce/dashboard.html:257
msgid "Accrual hours per month"
msgstr ""

#: app/templates/workforce/dashboard.html:258
msgid "Paid leave"
msgstr ""

#: app/templates/workforce/dashboard.html:259
msgid "Add leave type"
msgstr ""

#: app/templates/workforce/dashboard.html:264
msgid "disabled"
msgstr ""

#: app/templates/workforce/dashboard.html:277
msgid "Company Holidays"
msgstr ""

#: app/templates/workforce/dashboard.html:280
msgid "Holiday name"
msgstr ""

#: app/templates/workforce/dashboard.html:283
msgid "Region (optional)"
msgstr ""

#: app/templates/workforce/dashboard.html:284
msgid "Add holiday"
msgstr ""

#: app/templates/workforce/dashboard.html:296
msgid "No holidays configured."
msgstr ""

#: app/templates/workforce/dashboard.html:321
msgid "hours (max from overtime)"
msgstr ""

#: app/utils/context_processors.py:222 app/utils/context_processors.py:257
msgid "Support"
msgstr ""

#: app/utils/context_processors.py:226
msgid "That report was quick to generate. If TimeTracker saves you time, consider supporting its development."
msgstr ""

#: app/utils/context_processors.py:252
msgid "You appear to be offline. Reconnect to open donation or checkout links."
msgstr ""

#: app/utils/context_processors.py:255
msgid "Link copied to clipboard"
msgstr ""

#: app/utils/context_processors.py:256
msgid "Could not copy link"
msgstr ""

#: app/utils/context_processors.py:258
msgid "You have been using TimeTracker actively for a while. If it helps your work, consider supporting its development."
msgstr ""

#: app/utils/i18n_helpers.py:91 app/utils/i18n_helpers.py:102
msgid "Overpaid"
msgstr ""

#: app/utils/i18n_helpers.py:110 app/utils/i18n_helpers.py:126
msgid "Cash"
msgstr ""

#: app/utils/i18n_helpers.py:111 app/utils/i18n_helpers.py:127
msgid "Check"
msgstr ""

#: app/utils/i18n_helpers.py:112 app/utils/i18n_helpers.py:128
msgid "Bank Transfer"
msgstr ""

#: app/utils/i18n_helpers.py:113 app/utils/i18n_helpers.py:129
msgid "Credit Card"
msgstr ""

#: app/utils/i18n_helpers.py:114 app/utils/i18n_helpers.py:130
msgid "Debit Card"
msgstr ""

#: app/utils/i18n_helpers.py:116 app/utils/i18n_helpers.py:132
msgid "Stripe"
msgstr ""

#: app/utils/i18n_helpers.py:117 app/utils/i18n_helpers.py:133
msgid "Company Card"
msgstr ""

#: app/utils/i18n_helpers.py:145 app/utils/i18n_helpers.py:156
msgid "Reimbursed"
msgstr ""

#: app/utils/i18n_helpers.py:221 app/utils/i18n_helpers.py:233
msgid "Processing"
msgstr ""

#: app/utils/i18n_helpers.py:266
msgid "80% Budget Warning"
msgstr ""

#: app/utils/i18n_helpers.py:267
msgid "Budget Limit Reached"
msgstr ""

#: app/utils/i18n_helpers.py:275 app/utils/i18n_helpers.py:281
msgid "Info"
msgstr ""

#: app/utils/module_helpers.py:48
msgid "Authentication required."
msgstr ""

#: app/utils/module_helpers.py:62
#, python-format
msgid "Module '%(module)s' is disabled."
msgstr ""

#: app/utils/module_helpers.py:70
#, python-format
msgid "Module '%(module)s' is disabled. Enable it in Settings."
msgstr ""

#: app/utils/pdf_generator_fallback.py:169
#, python-format
msgid "Invoice #: %(num)s"
msgstr ""

#: app/utils/pdf_generator_fallback.py:173
#: app/utils/pdf_generator_fallback.py:176
#, python-format
msgid "Issue Date: %(date)s"
msgstr ""

#: app/utils/pdf_generator_fallback.py:174
#: app/utils/pdf_generator_fallback.py:177
#, python-format
msgid "Due Date: %(date)s"
msgstr ""

#: app/utils/pdf_generator_fallback.py:541
msgid "Quote For:"
msgstr ""

#: app/utils/pdf_generator_fallback.py:551
msgid "Quote Details:"
msgstr ""

#: app/utils/pdf_generator_fallback.py:572
msgid "Items:"
msgstr ""

#: app/utils/pdf_generator_fallback.py:622
msgid "Total:"
msgstr ""

#: app/utils/permissions.py:32 app/utils/permissions.py:67
msgid "Please log in to access this page"
msgstr ""

