<?php
// Translations for the PUQ Web Hosting module.
//
// Loaded by puqWebHosting_LoadLang() (server-module side) and
// puq_web_hosting_LoadLang() (addon side). Keys are looked up with
// `$lang['Foo'] ?? 'Foo'` everywhere, so missing entries fall back to
// the key itself — no fatal if a translation is incomplete.

// ---- Addon admin navigation ----
$_LANG_PUQ['Home']                 = 'Home';
$_LANG_PUQ['Services']             = 'Services';
$_LANG_PUQ['Statistics']           = 'Statistics';
$_LANG_PUQ['Vanity widget']        = 'Vanity widget';
$_LANG_PUQ['Infrastructure']      = 'Infrastructure';
$_LANG_PUQ['Web Servers']         = 'Web Servers';
$_LANG_PUQ['Mail Servers']        = 'Mail Servers';
$_LANG_PUQ['DNS Servers']         = 'DNS Servers';
$_LANG_PUQ['Server Groups']       = 'Server Groups';
$_LANG_PUQ['DNS Zones']           = 'DNS Zones';
$_LANG_PUQ['DNS Zone Templates']  = 'DNS Zone Templates';
$_LANG_PUQ['Task Queue']          = 'Task Queue';
$_LANG_PUQ['Operation Log']       = 'Operation Log';
$_LANG_PUQ['Logs']                = 'Logs';
$_LANG_PUQ['Settings']            = 'Settings';
$_LANG_PUQ['General']             = 'General';
$_LANG_PUQ['Cron']                = 'Cron';
$_LANG_PUQ['Help']                = 'Help';
$_LANG_PUQ['Documentation']       = 'Documentation';
$_LANG_PUQ['Community']           = 'Community';
$_LANG_PUQ['Website']             = 'Website';

// ---- Client-area sidebar / page titles ----
$_LANG_PUQ['Information']         = 'Information';
$_LANG_PUQ['FTP']                 = 'FTP';
$_LANG_PUQ['DNS Records']         = 'DNS Records';
$_LANG_PUQ['Databases']           = 'Databases';
$_LANG_PUQ['Mailboxes']           = 'Mailboxes';
$_LANG_PUQ['Mailbox']             = 'Mailbox';
$_LANG_PUQ['Cron Jobs']           = 'Cron Jobs';
$_LANG_PUQ['Web settings']        = 'Web settings';
$_LANG_PUQ['Custom SSL']          = 'Custom SSL';
$_LANG_PUQ['DNS verify']          = 'DNS verify';
$_LANG_PUQ['Backups']             = 'Backups';

// ---- Vanity order-form configurator + cart ----
$_LANG_PUQ['order_title']            = 'Choose your name & domain';
$_LANG_PUQ['order_help']             = 'Lowercase letters, digits and hyphens. This is your website name and your email name.';
$_LANG_PUQ['order_website']          = 'Website';
$_LANG_PUQ['order_email']            = 'Email';
$_LANG_PUQ['order_available']        = 'available';
$_LANG_PUQ['order_taken']            = 'already taken';
$_LANG_PUQ['order_invalid']          = 'letters, digits, hyphens only';
$_LANG_PUQ['order_too_long']         = 'name is too long';
$_LANG_PUQ['order_checking']         = 'checking…';
$_LANG_PUQ['order_could_not_check']  = 'could not check';
$_LANG_PUQ['order_no_domain']        = 'No domain available — contact support.';
$_LANG_PUQ['order_name_placeholder'] = 'your-name';
$_LANG_PUQ['cart_your_slot']         = 'Your vanity slot';
$_LANG_PUQ['cart_err_missing']       = 'Please choose a website name and domain for your hosting before checking out.';
$_LANG_PUQ['cart_err_invalid']       = 'The website name you entered is not valid';
$_LANG_PUQ['cart_err_domain']        = 'The selected domain is not available';
$_LANG_PUQ['cart_err_taken']         = 'This website name is already taken — please choose another';

// ---- client sub-page templates (logs / domain_setup / deploying / error / access_denied / header) ----
$_LANG_PUQ['ms_back_to_overview'] = 'Back to overview';
$_LANG_PUQ['ms_access_denied'] = 'Access denied.';
$_LANG_PUQ['ms_deploy_failed'] = 'Deploy failed';
$_LANG_PUQ['ms_domain'] = 'Domain';
$_LANG_PUQ['ms_deploy_error_notified'] = 'Something went wrong while configuring your service. Our team has been notified and is investigating.';
$_LANG_PUQ['ms_deploy_retry_or_wait'] = 'You can retry the deployment from here or wait for support to look into it.';
$_LANG_PUQ['ms_try_deployment_again'] = 'Try deployment again';
$_LANG_PUQ['ms_contact_support_logged'] = 'Please contact support — the issue has been logged.';
$_LANG_PUQ['ms_requeueing'] = 'Requeueing…';
$_LANG_PUQ['ms_redeploy_requested'] = 'Redeploy requested';
$_LANG_PUQ['ms_request_failed'] = 'Request failed';
$_LANG_PUQ['ms_network_error'] = 'Network error';
$_LANG_PUQ['ms_helper_missing'] = 'puqClientAjax helper missing';
$_LANG_PUQ['ms_service_being_deployed'] = 'Service is being deployed';
$_LANG_PUQ['ms_whats_happening_now'] = 'What\'s happening now';
$_LANG_PUQ['ms_starting'] = 'Starting…';
$_LANG_PUQ['ms_initializing'] = 'Initializing…';
$_LANG_PUQ['ms_page_refreshes_automatically'] = 'This page refreshes automatically. Full deployment typically takes 5-15 minutes.';
$_LANG_PUQ['ms_recent_activity'] = 'Recent activity';
$_LANG_PUQ['ms_stage'] = 'Stage';
$_LANG_PUQ['ms_state'] = 'State';
$_LANG_PUQ['ms_updated'] = 'Updated';
$_LANG_PUQ['ms_loading'] = 'Loading…';
$_LANG_PUQ['ms_state_done'] = 'done';
$_LANG_PUQ['ms_state_in_progress'] = 'in progress';
$_LANG_PUQ['ms_state_queued'] = 'queued';
$_LANG_PUQ['ms_state_failed'] = 'failed';
$_LANG_PUQ['ms_state_cancelled'] = 'cancelled';
$_LANG_PUQ['ms_no_activity_yet'] = 'No activity yet.';
$_LANG_PUQ['ms_working'] = 'Working…';
$_LANG_PUQ['ms_something_went_wrong'] = 'Something went wrong. Our team is investigating.';
$_LANG_PUQ['ms_deployment_finished'] = 'Deployment finished — refreshing…';
$_LANG_PUQ['ms_progress'] = 'Progress';
$_LANG_PUQ['ms_of'] = 'of';
$_LANG_PUQ['ms_steps_completed'] = 'steps completed';
$_LANG_PUQ['ms_in_progress'] = 'in progress';
$_LANG_PUQ['ms_pending'] = 'pending';
$_LANG_PUQ['ms_failed'] = 'failed';
$_LANG_PUQ['ms_set_up_your_domain'] = 'Set up your domain';
$_LANG_PUQ['ms_domain_setup_lead'] = 'Before we can provision your hosting, please tell us which domain to use.';
$_LANG_PUQ['ms_start_deployment'] = 'Start deployment';
$_LANG_PUQ['ms_domain_setup_help'] = 'Lowercase only. Must be a valid registered domain. We\'ll set everything up — web, mail, DNS.';
$_LANG_PUQ['ms_or_pick_from_account'] = 'Or pick one from your account:';
$_LANG_PUQ['ms_looking_up_domains'] = 'Looking up your domains…';
$_LANG_PUQ['ms_manage_dns_own_registrar'] = 'Manage DNS on my own registrar';
$_LANG_PUQ['ms_skip_our_nameservers'] = '— skip our nameservers';
$_LANG_PUQ['ms_external_dns_help'] = 'With this enabled we won\'t deploy a DNS zone. Instead we\'ll show you the A / MX / TXT records to publish on your registrar.';
$_LANG_PUQ['ms_if_you_keep_dns_with_us'] = 'If you keep DNS with us:';
$_LANG_PUQ['ms_point_nameservers_to'] = 'point your domain\'s nameservers to —';
$_LANG_PUQ['ms_source_registered'] = 'registered';
$_LANG_PUQ['ms_source_hosting'] = 'hosting';
$_LANG_PUQ['ms_could_not_load_suggestions'] = 'Could not load suggestions.';
$_LANG_PUQ['ms_not_valid_domain_format'] = 'Not a valid domain format yet.';
$_LANG_PUQ['ms_looks_good'] = 'Looks good.';
$_LANG_PUQ['ms_please_enter_valid_domain'] = 'Please enter a valid domain.';
$_LANG_PUQ['ms_checking_and_saving'] = 'Checking & saving...';
$_LANG_PUQ['ms_saving'] = 'Saving…';
$_LANG_PUQ['ms_saved_reloading'] = 'Saved. Reloading…';
$_LANG_PUQ['ms_failed_generic'] = 'Failed';
$_LANG_PUQ['ms_server_logs'] = 'Server logs';
$_LANG_PUQ['ms_logs_intro'] = 'Live tail of your service\'s server logs. Auto-refresh is throttled server-side — minimum interval between calls is 5 seconds for log fetches.';
$_LANG_PUQ['ms_loading_available_logs'] = 'Loading available logs…';
$_LANG_PUQ['ms_auto'] = 'Auto';
$_LANG_PUQ['ms_refresh_interval'] = 'Refresh interval';
$_LANG_PUQ['ms_reload_now'] = 'Reload now';
$_LANG_PUQ['ms_refresh'] = 'Refresh';
$_LANG_PUQ['ms_clear_viewer_hint'] = 'Clear viewer (server keeps log)';
$_LANG_PUQ['ms_clear'] = 'Clear';
$_LANG_PUQ['ms_download_full_log'] = 'Download full log file';
$_LANG_PUQ['ms_download'] = 'Download';
$_LANG_PUQ['ms_select_a_log_above'] = 'Select a log above.';
$_LANG_PUQ['ms_log_available'] = 'Available';
$_LANG_PUQ['ms_log_not_present'] = 'Not present yet';
$_LANG_PUQ['ms_log_not_readable'] = '(not readable yet)';
$_LANG_PUQ['ms_na'] = 'n/a';
$_LANG_PUQ['ms_no_logs_available'] = 'No logs available for this service yet.';
$_LANG_PUQ['ms_failed_load_catalog'] = 'Failed to load logs catalog';
$_LANG_PUQ['ms_log_rotated'] = 'log rotated — restarting from end';
$_LANG_PUQ['ms_no_matching_lines'] = '(empty — no matching lines for this domain)';
$_LANG_PUQ['ms_rate_limited'] = 'rate-limited';
$_LANG_PUQ['ms_retry_in'] = 'retry in';
$_LANG_PUQ['ms_fetching'] = 'fetching…';
$_LANG_PUQ['ms_tail_failed'] = 'Tail failed';
$_LANG_PUQ['ms_size'] = 'size';
$_LANG_PUQ['ms_filtered'] = 'filtered';
$_LANG_PUQ['ms_offset'] = 'offset';
$_LANG_PUQ['ms_reading'] = 'Reading…';
$_LANG_PUQ['ms_refreshing'] = 'Refreshing…';
$_LANG_PUQ['ms_view_cleared'] = '(view cleared — next poll will append)';
$_LANG_PUQ['ms_select_log_first'] = 'Select a log first.';

// ---- Client area: Mailboxes + Cron jobs (mc_*) ----
$_LANG_PUQ['mc_mailboxes_title'] = 'Mailboxes';
$_LANG_PUQ['mc_cron_jobs_title'] = 'Cron jobs';
$_LANG_PUQ['mc_mail_server_settings'] = 'Mail server settings';
$_LANG_PUQ['mc_open_webmail'] = 'Open Webmail';
$_LANG_PUQ['mc_server'] = 'Server';
$_LANG_PUQ['mc_domain'] = 'Domain';
$_LANG_PUQ['mc_auth'] = 'Auth';
$_LANG_PUQ['mc_normal_password'] = 'normal password';
$_LANG_PUQ['mc_username'] = 'Username';
$_LANG_PUQ['mc_full_email_address'] = 'full email address';
$_LANG_PUQ['mc_unassigned'] = '(unassigned)';
$_LANG_PUQ['mc_imap_hint'] = 'inbox sync';
$_LANG_PUQ['mc_pop3_hint'] = 'download & remove';
$_LANG_PUQ['mc_smtp_hint'] = 'sending';
$_LANG_PUQ['mc_no_encryption'] = 'No encryption';
$_LANG_PUQ['mc_email_accounts'] = 'Email accounts';
$_LANG_PUQ['mc_refreshing'] = 'Refreshing…';
$_LANG_PUQ['mc_used_limit'] = 'Used / limit';
$_LANG_PUQ['mc_add_mailbox'] = 'Add mailbox';
$_LANG_PUQ['mc_email_address'] = 'Email address';
$_LANG_PUQ['mc_local_part_hint'] = '1–64 letters/digits/dot/underscore/hyphen/plus.';
$_LANG_PUQ['mc_password'] = 'Password';
$_LANG_PUQ['mc_password_hint'] = 'Min 8 chars, must include UPPER, lower & a digit.';
$_LANG_PUQ['mc_create'] = 'Create';
$_LANG_PUQ['mc_cancel'] = 'Cancel';
$_LANG_PUQ['mc_create_after_hint_before'] = 'Aliases, quota, forward and auto-reply can be configured after creation via the ';
$_LANG_PUQ['mc_create_after_hint_after'] = ' button.';
$_LANG_PUQ['mc_email'] = 'Email';
$_LANG_PUQ['mc_used_quota'] = 'Used / Quota';
$_LANG_PUQ['mc_status'] = 'Status';
$_LANG_PUQ['mc_actions'] = 'Actions';
$_LANG_PUQ['mc_loading_mailboxes'] = 'Loading mailboxes…';
$_LANG_PUQ['mc_edit_mailbox'] = 'Edit mailbox';
$_LANG_PUQ['mc_aliases'] = 'Aliases';
$_LANG_PUQ['mc_aliases_hint_before'] = 'one local-part per line (no ';
$_LANG_PUQ['mc_aliases_hint_after'] = '). Each delivers to this mailbox.';
$_LANG_PUQ['mc_quota_mb'] = 'Quota (MB)';
$_LANG_PUQ['mc_forward_to'] = 'Forward to';
$_LANG_PUQ['mc_forward_to_hint'] = 'one email address per line.';
$_LANG_PUQ['mc_forward_only'] = 'Do not store forwarded mail';
$_LANG_PUQ['mc_forward_only_hint'] = 'deliver to the forward addresses only, skip the local mailbox. Requires at least one forward address.';
$_LANG_PUQ['mc_enable_autoreply'] = 'Enable auto-reply';
$_LANG_PUQ['mc_autoreply_placeholder'] = 'I\'m currently away and will reply on my return…';
$_LANG_PUQ['mc_save'] = 'Save';
$_LANG_PUQ['mc_error'] = 'error';
$_LANG_PUQ['mc_refresh_failed'] = 'Refresh failed';
$_LANG_PUQ['mc_no_mailboxes'] = 'No mailboxes yet. Click "Add mailbox" to create one.';
$_LANG_PUQ['mc_edit_tooltip'] = 'Edit aliases, quota, forward, auto-reply';
$_LANG_PUQ['mc_change_password'] = 'Change password';
$_LANG_PUQ['mc_delete'] = 'Delete';
$_LANG_PUQ['mc_mailbox_limit_reached'] = 'Mailbox limit reached';
$_LANG_PUQ['mc_limit_text_before'] = 'Your plan allows ';
$_LANG_PUQ['mc_mailbox_limit_text_after'] = ' mailbox(es). Delete one or upgrade your hosting plan.';
$_LANG_PUQ['mc_got_it'] = 'Got it';
$_LANG_PUQ['mc_close'] = 'Close';
$_LANG_PUQ['mc_delete_mailbox_q'] = 'Delete mailbox?';
$_LANG_PUQ['mc_delete_mailbox_text_before'] = 'Mailbox ';
$_LANG_PUQ['mc_delete_mailbox_text_after'] = ' and all its messages will be removed.';
$_LANG_PUQ['mc_keep'] = 'Keep';
$_LANG_PUQ['mc_mailbox_queued_delete'] = 'Mailbox queued for deletion';
$_LANG_PUQ['mc_delete_failed'] = 'Delete failed';
$_LANG_PUQ['mc_change_mailbox_password'] = 'Change mailbox password';
$_LANG_PUQ['mc_new_password_for'] = 'New password for ';
$_LANG_PUQ['mc_new_password'] = 'New password';
$_LANG_PUQ['mc_update'] = 'Update';
$_LANG_PUQ['mc_password_change_queued'] = 'Password change queued';
$_LANG_PUQ['mc_change_failed'] = 'Change failed';
$_LANG_PUQ['mc_failed_load_mailbox'] = 'Failed to load mailbox';
$_LANG_PUQ['mc_edit'] = 'Edit';
$_LANG_PUQ['mc_saving'] = 'Saving…';
$_LANG_PUQ['mc_settings_update_queued'] = 'Settings update queued';
$_LANG_PUQ['mc_save_failed'] = 'Save failed';
$_LANG_PUQ['mc_local_part_error'] = '1–64 letters/digits/dot/underscore/hyphen/plus';
$_LANG_PUQ['mc_creating'] = 'Creating…';
$_LANG_PUQ['mc_mailbox_creation_queued'] = 'Mailbox creation queued';
$_LANG_PUQ['mc_create_failed'] = 'Create failed';
$_LANG_PUQ['mc_useful_paths'] = 'Useful paths';
$_LANG_PUQ['mc_click_to_copy_hint'] = 'click any value to copy';
$_LANG_PUQ['mc_what'] = 'What';
$_LANG_PUQ['mc_short_cron_friendly'] = 'Short (cron-friendly)';
$_LANG_PUQ['mc_full_path'] = 'Full path';
$_LANG_PUQ['mc_home_directory'] = 'Your home directory';
$_LANG_PUQ['mc_click_to_copy'] = 'Click to copy';
$_LANG_PUQ['mc_website_docroot'] = 'Website document root';
$_LANG_PUQ['mc_logs_directory'] = 'Logs directory';
$_LANG_PUQ['mc_php_cli_binary'] = 'PHP CLI binary';
$_LANG_PUQ['mc_php_cli_hint_before'] = 'use specific version like ';
$_LANG_PUQ['mc_php_cli_hint_after'] = ' if multiple installed';
$_LANG_PUQ['mc_cron_runs_as'] = 'Cron runs commands as ';
$_LANG_PUQ['mc_cron_with'] = ' with ';
$_LANG_PUQ['mc_cron_abs_paths'] = 'Always use absolute paths for binaries ';
$_LANG_PUQ['mc_cron_abs_paths_2'] = ', but you can use ';
$_LANG_PUQ['mc_cron_abs_paths_3'] = ' for files inside your home.';
$_LANG_PUQ['mc_cron_redirect'] = 'Redirect output to a log file ';
$_LANG_PUQ['mc_cron_redirect_2'] = ' so failures are visible.';
$_LANG_PUQ['mc_scheduled_jobs'] = 'Scheduled jobs';
$_LANG_PUQ['mc_add_cron_job'] = 'Add cron job';
$_LANG_PUQ['mc_preset_optional'] = 'Preset (optional)';
$_LANG_PUQ['mc_preset_custom'] = '— custom —';
$_LANG_PUQ['mc_every_minute'] = 'Every minute';
$_LANG_PUQ['mc_every_5_minutes'] = 'Every 5 minutes';
$_LANG_PUQ['mc_every_15_minutes'] = 'Every 15 minutes';
$_LANG_PUQ['mc_hourly'] = 'Hourly (top of hour)';
$_LANG_PUQ['mc_every_6_hours'] = 'Every 6 hours';
$_LANG_PUQ['mc_daily_at'] = 'Daily at 02:00';
$_LANG_PUQ['mc_weekly'] = 'Weekly (Sun 02:00)';
$_LANG_PUQ['mc_monthly'] = 'Monthly (1st 02:00)';
$_LANG_PUQ['mc_schedule'] = 'Schedule';
$_LANG_PUQ['mc_schedule_fields'] = 'min hour day month wday';
$_LANG_PUQ['mc_command'] = 'Command';
$_LANG_PUQ['mc_loading_cron_jobs'] = 'Loading cron jobs…';
$_LANG_PUQ['mc_no_cron_jobs'] = 'No cron jobs yet. Click "Add cron job" to create one.';
$_LANG_PUQ['mc_cron_limit_reached'] = 'Cron job limit reached';
$_LANG_PUQ['mc_cron_limit_text_after'] = ' cron job(s). Delete one or upgrade your hosting plan.';
$_LANG_PUQ['mc_delete_cron_q'] = 'Delete cron job?';
$_LANG_PUQ['mc_cron_queued_delete'] = 'Cron job queued for deletion';
$_LANG_PUQ['mc_schedule_error'] = '5 fields. Example: */5 * * * *';
$_LANG_PUQ['mc_command_required'] = 'Command required.';
$_LANG_PUQ['mc_cron_creation_queued'] = 'Cron job creation queued';

// ---- client templates i18n (auto-merged 2026-06) ----
$_LANG_PUQ['ca_active'] = 'active';
$_LANG_PUQ['ca_autorefresh_label'] = 'auto-refresh 5s';
$_LANG_PUQ['ca_autorefresh_tooltip'] = 'Auto-refresh every 5 seconds. Click to pause / resume.';
$_LANG_PUQ['ca_backups'] = 'Backups';
$_LANG_PUQ['ca_cron_jobs'] = 'Cron jobs';
$_LANG_PUQ['ca_custom_ssl'] = 'Custom SSL';
$_LANG_PUQ['ca_databases'] = 'Databases';
$_LANG_PUQ['ca_dns_records'] = 'DNS records';
$_LANG_PUQ['ca_dns_verify'] = 'DNS verify';
$_LANG_PUQ['ca_expires'] = 'expires';
$_LANG_PUQ['ca_external_tools'] = 'External tools';
$_LANG_PUQ['ca_failed_to_load'] = 'Failed to load';
$_LANG_PUQ['ca_ns_mismatch_title'] = 'Your domain is not pointed at our nameservers';
$_LANG_PUQ['ca_ns_mismatch_body'] = 'We manage DNS for this domain, but it is still delegated elsewhere. Until you set the nameservers below at your domain registrar, your website, email and automatic SSL will not work:';
$_LANG_PUQ['ca_ns_current'] = 'Currently delegated to:';
$_LANG_PUQ['dz_ns_set_at_registrar'] = 'Set these nameservers at your domain registrar to use our DNS.';
$_LANG_PUQ['ca_file_manager'] = 'File Manager';
$_LANG_PUQ['ca_file_manager_chmod'] = 'File Manager (chmod)';
$_LANG_PUQ['ca_file_manager_unavailable'] = 'File Manager unavailable';
$_LANG_PUQ['ca_ftp_accounts'] = 'FTP accounts';
$_LANG_PUQ['ca_hosts_required'] = 'hosts required:';
$_LANG_PUQ['ca_in_progress'] = 'in progress';
$_LANG_PUQ['ca_issued_for'] = 'issued for:';
$_LANG_PUQ['ca_logs'] = 'Logs';
$_LANG_PUQ['ca_mail'] = 'Mail';
$_LANG_PUQ['ca_mail_accounts'] = 'Mail accounts';
$_LANG_PUQ['ca_mail_backups'] = 'Mail backups';
$_LANG_PUQ['ca_mail_disk'] = 'Mail disk';
$_LANG_PUQ['ca_mailboxes'] = 'Mailboxes';
$_LANG_PUQ['ca_management'] = 'Management';
$_LANG_PUQ['ca_no_actions'] = 'No actions available yet.';
$_LANG_PUQ['ca_op_backup'] = 'backup is being created on the server. You can keep using the site while it runs.';
$_LANG_PUQ['ca_op_generic'] = 'operation in progress.';
$_LANG_PUQ['ca_op_restore'] = 'is being restored from a backup. changes are temporarily disabled.';
$_LANG_PUQ['ca_open_webmail'] = 'Open Webmail';
$_LANG_PUQ['ca_opening'] = 'Opening…';
$_LANG_PUQ['ca_paused'] = 'paused';
$_LANG_PUQ['ca_queued'] = 'queued';
$_LANG_PUQ['ca_queuing'] = 'Queuing…';
$_LANG_PUQ['ca_quick_actions'] = 'Quick actions';
$_LANG_PUQ['ca_recompute_in_progress'] = 'Recompute in progress…';
$_LANG_PUQ['ca_refresh_everything'] = 'Refresh everything';
$_LANG_PUQ['ca_refresh_everything_tooltip'] = 'Pull EVERYTHING from the panels (databases, mailboxes, FTP, cron, web settings, custom SSL, backups + usage) into WHMCS.';
$_LANG_PUQ['ca_refresh_failed'] = 'Refresh failed';
$_LANG_PUQ['ca_refreshing'] = 'refreshing…';
$_LANG_PUQ['ca_request_ssl'] = 'Request SSL';
$_LANG_PUQ['ca_resources'] = 'Resources';
$_LANG_PUQ['ca_since'] = 'since';
$_LANG_PUQ['ca_ssl_active'] = 'ACTIVE';
$_LANG_PUQ['ca_ssl_configuring'] = 'CONFIGURING';
$_LANG_PUQ['ca_ssl_expired'] = 'EXPIRED';
$_LANG_PUQ['ca_ssl_failed'] = 'FAILED';
$_LANG_PUQ['ca_ssl_frozen'] = 'FROZEN';
$_LANG_PUQ['ca_ssl_installing'] = 'INSTALLING';
$_LANG_PUQ['ca_ssl_not_installed'] = 'NOT INSTALLED';
$_LANG_PUQ['ca_ssl_request_failed'] = 'SSL request failed';
$_LANG_PUQ['ca_sync_failed'] = 'Sync failed';
$_LANG_PUQ['ca_sync_usage'] = 'Sync usage';
$_LANG_PUQ['ca_sync_usage_tooltip'] = 'Queue server-side recompute + reload usage. Button stays locked until the chain finishes.';
$_LANG_PUQ['ca_toast_issue_queued'] = 'Issue queued';
$_LANG_PUQ['ca_toast_recompute_dispatched_1'] = 'Recompute dispatched on';
$_LANG_PUQ['ca_toast_recompute_dispatched_2'] = 'server(s). Button unlocks when counters refresh.';
$_LANG_PUQ['ca_toast_recompute_running'] = 'A recompute is already running — wait for it to finish.';
$_LANG_PUQ['ca_toast_refresh_queued'] = 'Refresh queued — page sections will catch up automatically.';
$_LANG_PUQ['ca_toast_sync_complete'] = 'Usage sync complete — counters refreshed.';
$_LANG_PUQ['ca_updated'] = 'updated:';
$_LANG_PUQ['ca_web_backups'] = 'Web backups';
$_LANG_PUQ['ca_web_bandwidth'] = 'Web bandwidth';
$_LANG_PUQ['ca_web_disk'] = 'Web disk';
$_LANG_PUQ['ca_web_hosting'] = 'Web hosting';
$_LANG_PUQ['ca_web_settings'] = 'Web settings';
$_LANG_PUQ['ca_website'] = 'Website';
$_LANG_PUQ['ca_working_on_cert'] = 'Working on certificate…';
$_LANG_PUQ['dz_account_backups'] = 'Account backups';
$_LANG_PUQ['dz_actions'] = 'Actions';
$_LANG_PUQ['dz_actions_disabled_until'] = '— actions are disabled until it finishes.';
$_LANG_PUQ['dz_add_dns_record'] = 'Add DNS record';
$_LANG_PUQ['dz_add_record'] = 'Add record';
$_LANG_PUQ['dz_apex_ttl_hint'] = 'Apex (zone root) is <code>@</code>. TTL is in seconds — lower means faster propagation, higher means less load on resolvers. Standard default: 3600 (1 hour).';
$_LANG_PUQ['dz_auto_managed'] = 'AUTO · MANAGED';
$_LANG_PUQ['dz_backup_limit_body_post'] = ' backup(s) and you already use all of them. Delete an existing one first, or upgrade your plan.';
$_LANG_PUQ['dz_backup_limit_body_pre'] = 'Your plan allows ';
$_LANG_PUQ['dz_backup_limit_reached'] = 'Backup limit reached';
$_LANG_PUQ['dz_backup_op_in_progress'] = 'Backup operation in progress';
$_LANG_PUQ['dz_backup_queued'] = 'Backup queued — refresh in a few minutes.';
$_LANG_PUQ['dz_backups'] = 'Backups';
$_LANG_PUQ['dz_backups_intro'] = 'Backups are stored on the hosting server. Creating one takes a few minutes; restoring overwrites the current files with the snapshot\'s contents.';
$_LANG_PUQ['dz_ca_chain'] = 'CA chain (intermediate certs, optional)';
$_LANG_PUQ['dz_cancel'] = 'Cancel';
$_LANG_PUQ['dz_canonical_set_post'] = 'Publish these on your registrar\'s DNS panel, then click <strong>Verify all</strong> to confirm propagation.';
$_LANG_PUQ['dz_canonical_set_pre'] = 'This is the canonical record set for';
$_LANG_PUQ['dz_cert_accepted'] = 'Certificate accepted — installation queued.';
$_LANG_PUQ['dz_cert_key_required'] = 'Certificate and private key are required.';
$_LANG_PUQ['dz_certificate_pem'] = 'Certificate (PEM)';
$_LANG_PUQ['dz_click_zone_to_copy'] = 'click the zone to copy';
$_LANG_PUQ['dz_clipboard_blocked'] = 'Clipboard blocked — copy manually';
$_LANG_PUQ['dz_close'] = 'Close';
$_LANG_PUQ['dz_copied'] = 'Copied:';
$_LANG_PUQ['dz_create'] = 'Create';
$_LANG_PUQ['dz_create_backup'] = 'Create backup';
$_LANG_PUQ['dz_create_backup_body_post'] = ' backup will be created on the server. This usually takes a few minutes — you can keep using the site while it runs.';
$_LANG_PUQ['dz_create_backup_body_pre'] = 'A full ';
$_LANG_PUQ['dz_create_backup_q_post'] = ' backup?';
$_LANG_PUQ['dz_create_backup_q_pre'] = 'Create ';
$_LANG_PUQ['dz_create_failed'] = 'Create failed';
$_LANG_PUQ['dz_creating_backup'] = 'Creating backup';
$_LANG_PUQ['dz_custom_active'] = 'CUSTOM · ACTIVE';
$_LANG_PUQ['dz_custom_cert_removed'] = 'Custom certificate removed';
$_LANG_PUQ['dz_custom_error'] = 'CUSTOM · ERROR';
$_LANG_PUQ['dz_custom_expired'] = 'CUSTOM · EXPIRED';
$_LANG_PUQ['dz_custom_prefix'] = 'CUSTOM · ';
$_LANG_PUQ['dz_custom_ssl'] = 'Custom SSL';
$_LANG_PUQ['dz_defaults_queued'] = 'Defaults queued — records will repopulate and deploy automatically';
$_LANG_PUQ['dz_delete'] = 'Delete';
$_LANG_PUQ['dz_delete_backup_body_post'] = ' will be permanently removed from the server. This cannot be undone.';
$_LANG_PUQ['dz_delete_backup_body_pre'] = 'Snapshot ';
$_LANG_PUQ['dz_delete_backup_q'] = 'Delete backup?';
$_LANG_PUQ['dz_delete_dns_record_q'] = 'Delete DNS record?';
$_LANG_PUQ['dz_delete_failed'] = 'Delete failed';
$_LANG_PUQ['dz_delete_queued'] = 'Delete queued';
$_LANG_PUQ['dz_delete_snapshot'] = 'Delete this snapshot';
$_LANG_PUQ['dz_deleting_backup'] = 'Deleting backup';
$_LANG_PUQ['dz_dns_record'] = 'DNS record';
$_LANG_PUQ['dz_dns_records'] = 'DNS records';
$_LANG_PUQ['dz_dns_verify'] = 'DNS verify';
$_LANG_PUQ['dz_edit_prefix'] = 'Edit ';
$_LANG_PUQ['dz_edit_record_suffix'] = ' record';
$_LANG_PUQ['dz_entire_account'] = 'entire account';
$_LANG_PUQ['dz_err_cname_apex'] = 'CNAME is not allowed at the zone apex (@). Use A/AAAA for the apex.';
$_LANG_PUQ['dz_err_name'] = 'Name: use \'@\', a label like \'www\', or a full subdomain.';
$_LANG_PUQ['dz_err_priority_post'] = ' (0–65535).';
$_LANG_PUQ['dz_err_priority_pre'] = 'Priority required for ';
$_LANG_PUQ['dz_err_ttl'] = 'TTL must be 60–86400 seconds.';
$_LANG_PUQ['dz_error'] = 'error';
$_LANG_PUQ['dz_external_dns_desc'] = '— you publish these records on your registrar.';
$_LANG_PUQ['dz_external_dns_mode'] = 'External DNS mode';
$_LANG_PUQ['dz_failed_load_backups'] = 'Failed to load backups';
$_LANG_PUQ['dz_failed_load_required'] = 'Failed to load required DNS records.';
$_LANG_PUQ['dz_failed_load_ssl_state'] = 'Failed to load SSL state';
$_LANG_PUQ['dz_file'] = 'File';
$_LANG_PUQ['dz_files'] = 'files';
$_LANG_PUQ['dz_got'] = 'Got:';
$_LANG_PUQ['dz_got_it'] = 'Got it';
$_LANG_PUQ['dz_hint_a'] = 'IPv4 address — e.g. 192.0.2.1';
$_LANG_PUQ['dz_hint_aaaa'] = 'IPv6 address — e.g. 2001:db8::1';
$_LANG_PUQ['dz_hint_caa'] = 'Format: <flags> <tag> "<value>" — e.g. 0 issue "letsencrypt.org"';
$_LANG_PUQ['dz_hint_cname'] = 'Target hostname — "www" (in-zone) or "target.example.com." (FQDN with trailing dot)';
$_LANG_PUQ['dz_hint_mx'] = 'Mail server — "mail" (in-zone) or "mail.example.com." (FQDN). Priority sets preference.';
$_LANG_PUQ['dz_hint_ns'] = 'Nameserver — "ns1" (in-zone) or "ns1.example.com." (FQDN)';
$_LANG_PUQ['dz_hint_srv'] = 'Format: <weight> <port> <target> — target can be "sip" (in-zone) or FQDN';
$_LANG_PUQ['dz_hint_txt'] = 'Free-form text — usually quoted, e.g. SPF / DKIM / verification';
$_LANG_PUQ['dz_issuer'] = 'Issuer';
$_LANG_PUQ['dz_keep'] = 'Keep';
$_LANG_PUQ['dz_keep_current'] = 'Keep current';
$_LANG_PUQ['dz_keep_custom'] = 'Keep custom';
$_LANG_PUQ['dz_key_not_protected'] = 'The key must NOT be password-protected.';
$_LANG_PUQ['dz_live'] = 'Live';
$_LANG_PUQ['dz_loading'] = 'Loading…';
$_LANG_PUQ['dz_loading_backups'] = 'Loading backups…';
$_LANG_PUQ['dz_loading_dns_records'] = 'Loading DNS records…';
$_LANG_PUQ['dz_loading_ssl_state'] = 'Loading SSL state…';
$_LANG_PUQ['dz_mail_backups'] = 'Mail backups';
$_LANG_PUQ['dz_mail_ssl'] = 'Mail SSL';
$_LANG_PUQ['dz_managed_by_auto_ssl'] = 'Managed by our auto-SSL system. The certificate is issued and renewed automatically when DNS resolves to this server.';
$_LANG_PUQ['dz_match'] = 'match';
$_LANG_PUQ['dz_missing'] = 'missing';
$_LANG_PUQ['dz_name'] = 'Name';
$_LANG_PUQ['dz_name_apex_hint'] = '— use <code>@</code> for the zone apex';
$_LANG_PUQ['dz_name_placeholder'] = '@ or www';
$_LANG_PUQ['dz_nameservers'] = 'Nameservers';
$_LANG_PUQ['dz_no_backups_yet'] = 'No backups yet. Click <strong>Create backup</strong> to make one.';
$_LANG_PUQ['dz_no_records_configured'] = 'No DNS records have been configured for this service yet. If you just placed the order, refresh in a minute.';
$_LANG_PUQ['dz_no_records_yet'] = 'No DNS records yet. Click "Add record" to create one.';
$_LANG_PUQ['dz_not_checked'] = '(not checked)';
$_LANG_PUQ['dz_not_configured_by_admin'] = '(not configured by admin)';
$_LANG_PUQ['dz_not_yet_synced'] = 'not yet synced';
$_LANG_PUQ['dz_ns_match'] = 'NS match';
$_LANG_PUQ['dz_ns_mismatch'] = 'NS mismatch';
$_LANG_PUQ['dz_ns_not_configured'] = 'NS not configured';
$_LANG_PUQ['dz_ns_only_if_we_manage'] = '(only required if we manage DNS)';
$_LANG_PUQ['dz_ok'] = 'ok';
$_LANG_PUQ['dz_op_running_post'] = ' card — wait for it to finish.';
$_LANG_PUQ['dz_op_running_pre'] = 'A backup operation is already running on the ';
$_LANG_PUQ['dz_our_dns'] = 'Our DNS';
$_LANG_PUQ['dz_our_dns_desc'] = '— point your domain to the nameservers below; we publish the records.';
$_LANG_PUQ['dz_own_ns_body1'] = 'If your domain is delegated to NS servers <em>outside</em> our network (e.g. Cloudflare, your registrar\'s default DNS, your own self-hosted DNS), the records you create here will <strong>not</strong> reach the public Internet — visitors will keep asking your nameservers, which don\'t have these entries.';
$_LANG_PUQ['dz_own_ns_body2'] = 'For the service (mail, SSL auto-issue, web access) to work, you must <strong>mirror these records on your own DNS</strong> wherever it\'s hosted. Add the same Type / Name / Value / TTL combinations there.';
$_LANG_PUQ['dz_own_ns_q'] = 'Using your own nameservers?';
$_LANG_PUQ['dz_pri'] = 'Pri';
$_LANG_PUQ['dz_priority'] = 'Priority';
$_LANG_PUQ['dz_priority_ttl'] = 'Priority / TTL';
$_LANG_PUQ['dz_private_key_pem'] = 'Private key (PEM, <strong>unencrypted</strong>)';
$_LANG_PUQ['dz_querying_dns'] = 'Querying DNS…';
$_LANG_PUQ['dz_record_creation_queued'] = 'Record creation queued';
$_LANG_PUQ['dz_record_limit_body_post'] = '</strong> record(s). Delete one or upgrade your hosting plan.';
$_LANG_PUQ['dz_record_limit_body_pre'] = 'Your plan allows <strong>';
$_LANG_PUQ['dz_record_limit_reached'] = 'DNS record limit reached';
$_LANG_PUQ['dz_record_queued_deletion'] = 'Record queued for deletion';
$_LANG_PUQ['dz_record_update_queued'] = 'Record update queued';
$_LANG_PUQ['dz_records'] = 'Records';
$_LANG_PUQ['dz_records_to_publish'] = 'DNS records to publish';
$_LANG_PUQ['dz_refresh_failed'] = 'Refresh failed';
$_LANG_PUQ['dz_refreshing'] = 'Refreshing…';
$_LANG_PUQ['dz_remove_cert_body_post'] = ' certificate will be removed from our records. The cert stays installed on the server until Let\'s Encrypt replaces it on the next auto-check.';
$_LANG_PUQ['dz_remove_cert_body_pre'] = 'Your custom ';
$_LANG_PUQ['dz_remove_certificate'] = 'Remove certificate (resume auto-SSL)';
$_LANG_PUQ['dz_remove_failed'] = 'Remove failed';
$_LANG_PUQ['dz_restore'] = 'Restore';
$_LANG_PUQ['dz_restore_backup_q'] = 'Restore this backup?';
$_LANG_PUQ['dz_restore_body_mid'] = ' will <strong>OVERWRITE</strong> your current ';
$_LANG_PUQ['dz_restore_body_post'] = ' with the snapshot. This cannot be undone.<br><br>Type <strong>RESTORE</strong> below to confirm.';
$_LANG_PUQ['dz_restore_body_pre'] = 'Restoring ';
$_LANG_PUQ['dz_restore_default_records_q'] = 'Restore default DNS records?';
$_LANG_PUQ['dz_restore_defaults'] = 'Restore defaults';
$_LANG_PUQ['dz_restore_defaults_tip'] = 'Wipe all records and recreate the default set from the zone template — use this if you accidentally deleted records and your site stopped working';
$_LANG_PUQ['dz_restore_failed'] = 'Restore failed';
$_LANG_PUQ['dz_restore_from_snapshot'] = 'Restore from this snapshot';
$_LANG_PUQ['dz_restore_queued'] = 'Restore queued — site may be briefly unavailable.';
$_LANG_PUQ['dz_restore_records_body'] = 'This will <strong>delete all current records</strong> and recreate the default set provided by your hosting provider (typically: A/AAAA for the website, MX for mail, CNAMEs for <code>www</code>/<code>ftp</code>/<code>webmail</code>, CAA for SSL, etc.).<br><br>Use this when you accidentally removed records and your site / email stopped working — it brings everything back to a known-good state.<br><br><span style="color:var(--puq-danger);"><strong>Any manual edits and custom records will be lost.</strong></span>';
$_LANG_PUQ['dz_restoring_backup'] = 'Restoring backup';
$_LANG_PUQ['dz_resume_auto_ssl'] = 'Resume auto-SSL';
$_LANG_PUQ['dz_resume_auto_ssl_q'] = 'Resume auto-SSL?';
$_LANG_PUQ['dz_role_account'] = 'Account';
$_LANG_PUQ['dz_role_mail'] = 'Mail';
$_LANG_PUQ['dz_role_web'] = 'Web';
$_LANG_PUQ['dz_san'] = 'SAN';
$_LANG_PUQ['dz_save'] = 'Save';
$_LANG_PUQ['dz_save_failed'] = 'Save failed';
$_LANG_PUQ['dz_saving'] = 'Saving…';
$_LANG_PUQ['dz_sec'] = 'sec';
$_LANG_PUQ['dz_seconds'] = '(seconds)';
$_LANG_PUQ['dz_showing_planned_set'] = '(showing the planned record set — deploy hasn\'t finished yet)';
$_LANG_PUQ['dz_size_created'] = 'Size / Created';
$_LANG_PUQ['dz_ssl_intro'] = 'By default we issue and renew Let\'s Encrypt certificates for you automatically. You can also upload your own certificate (an EV cert, a wildcard, a paid CA cert) — while it\'s installed we stop renewing the Let\'s Encrypt one for that role, and we\'ll still email you before your cert expires.';
$_LANG_PUQ['dz_state'] = 'State';
$_LANG_PUQ['dz_status'] = 'Status';
$_LANG_PUQ['dz_subject_cn'] = 'Subject (CN)';
$_LANG_PUQ['dz_synced'] = 'synced';
$_LANG_PUQ['dz_syncing_with_server'] = 'Syncing with server';
$_LANG_PUQ['dz_syncing_with_server_lc'] = 'syncing with server…';
$_LANG_PUQ['dz_ttl'] = 'TTL';
$_LANG_PUQ['dz_type'] = 'Type';
$_LANG_PUQ['dz_type_restore_uppercase'] = 'Type RESTORE (uppercase) to confirm.';
$_LANG_PUQ['dz_unverifiable'] = 'unverifiable';
$_LANG_PUQ['dz_upload_certificate'] = 'Upload certificate';
$_LANG_PUQ['dz_upload_failed'] = 'Upload failed';
$_LANG_PUQ['dz_upload_mail_cert'] = 'Upload mail certificate';
$_LANG_PUQ['dz_upload_web_cert'] = 'Upload web certificate';
$_LANG_PUQ['dz_used_limit'] = 'Used / limit';
$_LANG_PUQ['dz_valid_from'] = 'Valid from';
$_LANG_PUQ['dz_valid_until'] = 'Valid until';
$_LANG_PUQ['dz_validate_install'] = 'Validate & install';
$_LANG_PUQ['dz_value'] = 'Value';
$_LANG_PUQ['dz_value_expected'] = 'Value (expected)';
$_LANG_PUQ['dz_verify_all_records'] = 'Verify all records';
$_LANG_PUQ['dz_verify_externally'] = 'Verify externally with dig.';
$_LANG_PUQ['dz_verify_failed'] = 'Verify failed';
$_LANG_PUQ['dz_web_hosting_backups'] = 'Web hosting backups';
$_LANG_PUQ['dz_web_ssl'] = 'Web SSL';
$_LANG_PUQ['dz_zone'] = 'Zone';
$_LANG_PUQ['dz_zone_info'] = 'Zone info';
$_LANG_PUQ['hdr_active'] = 'active';
$_LANG_PUQ['hdr_add'] = 'Add';
$_LANG_PUQ['hdr_almost_at_limit'] = 'Almost at the limit';
$_LANG_PUQ['hdr_cancel'] = 'Cancel';
$_LANG_PUQ['hdr_clipboard_blocked'] = 'Clipboard blocked — copy manually';
$_LANG_PUQ['hdr_copied'] = 'Copied';
$_LANG_PUQ['hdr_copied_colon'] = 'Copied:';
$_LANG_PUQ['hdr_copy_failed'] = 'Copy failed — select manually';
$_LANG_PUQ['hdr_creating'] = 'creating…';
$_LANG_PUQ['hdr_d_ago'] = 'd ago';
$_LANG_PUQ['hdr_deleted'] = 'deleted';
$_LANG_PUQ['hdr_deleting'] = 'deleting…';
$_LANG_PUQ['hdr_deploy_failed'] = 'deploy failed — check status';
$_LANG_PUQ['hdr_deploying'] = 'deploying…';
$_LANG_PUQ['hdr_dns_msg_a'] = 'Must be a valid IPv4 address (e.g. 192.0.2.1).';
$_LANG_PUQ['hdr_dns_msg_aaaa'] = 'Must be a valid IPv6 address (e.g. 2001:db8::1).';
$_LANG_PUQ['hdr_dns_msg_caa'] = 'Format: <flags 0-255> <issue|issuewild|iodef> "<value>" — e.g. 0 issue "letsencrypt.org".';
$_LANG_PUQ['hdr_dns_msg_cname'] = 'Must be a hostname — short like "www" (in-zone) or full FQDN like "target.example.com.".';
$_LANG_PUQ['hdr_dns_msg_dnskey'] = 'Format: "<flags 0-65535> <protocol 0-255> <algorithm 0-255> <base64-key>" — e.g. 257 3 13 mdsswUyr3DPW…';
$_LANG_PUQ['hdr_dns_msg_ds'] = 'Format: "<key-tag 0-65535> <algorithm 0-255> <digest-type 0-255> <hex-digest>" — e.g. 12345 13 2 a1b2c3…';
$_LANG_PUQ['hdr_dns_msg_mx'] = 'Must be a mail server hostname — short like "mail" (in-zone) or FQDN like "mail.example.com.".';
$_LANG_PUQ['hdr_dns_msg_naptr'] = 'Format: "<order> <preference> \\"flags\\" \\"service\\" \\"regexp\\" <replacement>" — e.g. 100 10 "U" "E2U+sip" "!^.*$!sip:info@example.com!" .';
$_LANG_PUQ['hdr_dns_msg_ns'] = 'Must be a nameserver hostname — short like "ns1" (in-zone) or FQDN like "ns1.example.com.".';
$_LANG_PUQ['hdr_dns_msg_ptr'] = 'Must be a hostname — typically a full FQDN like "host.example.com.".';
$_LANG_PUQ['hdr_dns_msg_srv'] = 'Format: "<weight> <port> <target>" — target can be "sip" (in-zone) or "sip.example.com." (FQDN).';
$_LANG_PUQ['hdr_dns_msg_tlsa'] = 'Format: "<usage 0-3> <selector 0-1> <matching-type 0-2> <hex-cert-data>" — e.g. 3 1 1 b76450c92f689516…';
$_LANG_PUQ['hdr_dt_info'] = '_START_–_END_ of _TOTAL_';
$_LANG_PUQ['hdr_dt_length_menu'] = '_MENU_ rows';
$_LANG_PUQ['hdr_dt_search'] = 'Filter:';
$_LANG_PUQ['hdr_error'] = 'error';
$_LANG_PUQ['hdr_failed'] = 'Failed';
$_LANG_PUQ['hdr_h_ago'] = 'h ago';
$_LANG_PUQ['hdr_invalid_value'] = 'Invalid value';
$_LANG_PUQ['hdr_invalid_value_dot'] = 'Invalid value.';
$_LANG_PUQ['hdr_is_now_active'] = 'is now active';
$_LANG_PUQ['hdr_just_now'] = 'just now';
$_LANG_PUQ['hdr_last_synced'] = 'Last synced';
$_LANG_PUQ['hdr_last_synced_dash'] = 'Last synced —';
$_LANG_PUQ['hdr_limit_reached'] = 'Limit reached';
$_LANG_PUQ['hdr_loading'] = 'Loading…';
$_LANG_PUQ['hdr_min_ago'] = 'min ago';
$_LANG_PUQ['hdr_network_error'] = 'Network error: HTTP';
$_LANG_PUQ['hdr_never_synced'] = 'Never synced';
$_LANG_PUQ['hdr_no_role_server'] = 'No %s server';
$_LANG_PUQ['hdr_non_json_response'] = 'Non-JSON response (%d bytes). Server said:';
$_LANG_PUQ['hdr_ok'] = 'OK';
$_LANG_PUQ['hdr_password_strong_msg'] = 'Min 8 chars, must include uppercase, lowercase and a digit.';
$_LANG_PUQ['hdr_pending_terminate'] = 'pending terminate';
$_LANG_PUQ['hdr_prev_change_failed'] = 'The previous change failed. Try again, or contact support.';
$_LANG_PUQ['hdr_queued'] = 'queued';
$_LANG_PUQ['hdr_queued_create'] = 'queued (create)';
$_LANG_PUQ['hdr_queued_for_delete'] = 'queued for delete';
$_LANG_PUQ['hdr_queued_update'] = 'queued (update)';
$_LANG_PUQ['hdr_refresh'] = 'Refresh';
$_LANG_PUQ['hdr_refresh_failed'] = 'Refresh failed';
$_LANG_PUQ['hdr_refresh_in_progress'] = 'Refresh already in progress';
$_LANG_PUQ['hdr_refresh_queued'] = 'Refresh queued';
$_LANG_PUQ['hdr_refreshing'] = 'Refreshing…';
$_LANG_PUQ['hdr_restore_banner_text'] = 'is being restored from a backup. All editing controls for the affected role(s) are temporarily read-only — changes made now would be overwritten when the restore finishes.';
$_LANG_PUQ['hdr_role_mail'] = 'Mail';
$_LANG_PUQ['hdr_role_website'] = 'Website';
$_LANG_PUQ['hdr_s_ago'] = 's ago';
$_LANG_PUQ['hdr_since'] = 'since';
$_LANG_PUQ['hdr_syncing'] = 'Syncing…';
$_LANG_PUQ['hdr_updating'] = 'updating…';
$_LANG_PUQ['hdr_used_limit'] = 'Used / limit';
$_LANG_PUQ['vn_applying_last_change'] = 'Applying your last change… settings are locked for a moment.';
$_LANG_PUQ['vn_auto_reply_hint'] = 'Sent automatically to anyone who emails you. Leave empty to turn the auto-responder off.';
$_LANG_PUQ['vn_auto_reply_message'] = 'Automatic reply message';
$_LANG_PUQ['vn_auto_reply_placeholder'] = 'I\'m currently away and will reply when I\'m back.';
$_LANG_PUQ['vn_auto_responder'] = 'Auto-responder';
$_LANG_PUQ['vn_back_to_overview'] = 'Back to overview';
$_LANG_PUQ['vn_backups'] = 'Backups';
$_LANG_PUQ['vn_bandwidth'] = 'Bandwidth';
$_LANG_PUQ['vn_change_password'] = 'Change password';
$_LANG_PUQ['vn_choose_domain'] = 'Please choose a domain.';
$_LANG_PUQ['vn_choose_your_name'] = 'Choose your name';
$_LANG_PUQ['vn_click_to_copy'] = 'Click to copy';
$_LANG_PUQ['vn_could_not_load'] = 'Could not load.';
$_LANG_PUQ['vn_could_not_load_domains'] = 'Could not load domains.';
$_LANG_PUQ['vn_could_not_save'] = 'Could not save.';
$_LANG_PUQ['vn_cron_jobs'] = 'Cron jobs';
$_LANG_PUQ['vn_custom_ssl'] = 'Custom SSL';
$_LANG_PUQ['vn_databases'] = 'Databases';
$_LANG_PUQ['vn_done_reloading'] = 'Done. Reloading…';
$_LANG_PUQ['vn_email'] = 'Email';
$_LANG_PUQ['vn_email_addr_hint'] = 'This is your email address.';
$_LANG_PUQ['vn_email_addr_plan_hint'] = 'Your email address. Mailbox size is set by your plan.';
$_LANG_PUQ['vn_enter_valid_name'] = 'Please enter a valid name.';
$_LANG_PUQ['vn_err_password_change'] = 'Could not change password.';
$_LANG_PUQ['vn_err_password_mismatch'] = 'Passwords do not match.';
$_LANG_PUQ['vn_err_password_weak'] = 'Min 8 chars incl. upper, lower and a digit.';
$_LANG_PUQ['vn_external_tools'] = 'External tools';
$_LANG_PUQ['vn_failed'] = 'Failed';
$_LANG_PUQ['vn_file_manager'] = 'File manager';
$_LANG_PUQ['vn_file_manager_chmod'] = 'File manager (chmod)';
$_LANG_PUQ['vn_file_manager_unavailable'] = 'File Manager unavailable';
$_LANG_PUQ['vn_forward_copy_to'] = 'Forward a copy to';
$_LANG_PUQ['vn_forward_hint'] = 'One or more full email addresses, separated by commas. Leave empty to disable forwarding.';
$_LANG_PUQ['vn_forward_only_label'] = 'Do <strong>not</strong> keep a copy in this mailbox (forward only)';
$_LANG_PUQ['vn_forwarding_redirects'] = 'Forwarding & redirects';
$_LANG_PUQ['vn_loading'] = 'Loading…';
$_LANG_PUQ['vn_loading_mailbox'] = 'Loading mailbox…';
$_LANG_PUQ['vn_logs'] = 'Logs';
$_LANG_PUQ['vn_looks_good'] = 'Looks good.';
$_LANG_PUQ['vn_mail_disk'] = 'Mail disk';
$_LANG_PUQ['vn_mail_settings_queued'] = 'Mail settings queued.';
$_LANG_PUQ['vn_mailbox'] = 'Mailbox';
$_LANG_PUQ['vn_mailbox_being_setup'] = 'Your mailbox is being set up — this page will be available in a few minutes.';
$_LANG_PUQ['vn_mailbox_settings'] = 'Mailbox settings';
$_LANG_PUQ['vn_mailbox_storage'] = 'Mailbox storage';
$_LANG_PUQ['vn_management'] = 'Management';
$_LANG_PUQ['vn_meta_updated'] = 'updated';
$_LANG_PUQ['vn_meta_web'] = 'web';
$_LANG_PUQ['vn_name_invalid'] = 'Only lowercase letters, digits and hyphens; no leading/trailing hyphen.';
$_LANG_PUQ['vn_name_rule'] = 'Lowercase letters, digits and hyphens only. One label, no dots. This is also your email name.';
$_LANG_PUQ['vn_name_available'] = 'Available';
$_LANG_PUQ['vn_name_taken'] = 'This name is already taken — try another.';
$_LANG_PUQ['vn_checking'] = 'Checking availability…';
$_LANG_PUQ['vn_new_password'] = 'New password';
$_LANG_PUQ['vn_no_actions'] = 'No actions available.';
$_LANG_PUQ['vn_no_domains_available'] = 'No domains are available yet — please contact support.';
$_LANG_PUQ['vn_of'] = 'of';
$_LANG_PUQ['vn_open_webmail'] = 'Open webmail';
$_LANG_PUQ['vn_open_website'] = 'Open website';
$_LANG_PUQ['vn_opening'] = 'Opening…';
$_LANG_PUQ['vn_password'] = 'Password';
$_LANG_PUQ['vn_password_queued'] = 'Password change queued.';
$_LANG_PUQ['vn_password_rule'] = 'At least 8 characters, with an uppercase letter, a lowercase letter and a digit.';
$_LANG_PUQ['vn_quick_actions'] = 'Quick actions';
$_LANG_PUQ['vn_repeat_password'] = 'Repeat password';
$_LANG_PUQ['vn_save_auto_responder'] = 'Save auto-responder';
$_LANG_PUQ['vn_save_forwarding'] = 'Save forwarding';
$_LANG_PUQ['vn_saving'] = 'Saving…';
$_LANG_PUQ['vn_setting_up'] = 'Setting up…';
$_LANG_PUQ['vn_settings'] = 'Settings';
$_LANG_PUQ['vn_setup_lead'] = 'Pick the name for your site and mailbox. We\'ll set up <strong>your-name.&lt;domain&gt;</strong> as a website and <strong>your-name@&lt;domain&gt;</strong> as an email address.';
$_LANG_PUQ['vn_site'] = 'Site';
$_LANG_PUQ['vn_start'] = 'Start';
$_LANG_PUQ['vn_status_active'] = 'Active';
$_LANG_PUQ['vn_status_deploying'] = 'Deploying';
$_LANG_PUQ['vn_status_error'] = 'Error';
$_LANG_PUQ['vn_status_queued'] = 'Queued';
$_LANG_PUQ['vn_warn_forward_only_empty'] = 'Add at least one forwarding address before enabling "forward only".';
$_LANG_PUQ['vn_web_disk'] = 'Web disk';
$_LANG_PUQ['vn_website'] = 'Website';
$_LANG_PUQ['vn_website_addr_hint'] = 'This is your website address.';
$_LANG_PUQ['vn_youll_get'] = 'You\'ll get';
$_LANG_PUQ['vn_your_name'] = 'your-name';
$_LANG_PUQ['wf_account'] = 'Account';
$_LANG_PUQ['wf_actions'] = 'Actions';
$_LANG_PUQ['wf_add_database'] = 'Add database';
$_LANG_PUQ['wf_add_ftp_account'] = 'Add FTP account';
$_LANG_PUQ['wf_added_automatically'] = 'added automatically.';
$_LANG_PUQ['wf_all_data_lost'] = 'All data will be lost.';
$_LANG_PUQ['wf_also_db_user'] = '(also used as DB user)';
$_LANG_PUQ['wf_apply'] = 'Apply';
$_LANG_PUQ['wf_auto_redirect_http_https'] = 'Automatically redirect HTTP → HTTPS';
$_LANG_PUQ['wf_back_to_overview'] = 'Back to overview';
$_LANG_PUQ['wf_cancel'] = 'Cancel';
$_LANG_PUQ['wf_change_db_password'] = 'Change database password';
$_LANG_PUQ['wf_change_failed'] = 'Change failed';
$_LANG_PUQ['wf_change_failed_tooltip'] = 'The previous change failed. Try again, or contact support.';
$_LANG_PUQ['wf_change_ftp_password'] = 'Change FTP password';
$_LANG_PUQ['wf_change_password'] = 'Change password';
$_LANG_PUQ['wf_chars'] = 'chars.';
$_LANG_PUQ['wf_close'] = 'Close';
$_LANG_PUQ['wf_create'] = 'Create';
$_LANG_PUQ['wf_create_failed'] = 'Create failed';
$_LANG_PUQ['wf_creating'] = 'Creating…';
$_LANG_PUQ['wf_database'] = 'Database';
$_LANG_PUQ['wf_database_name'] = 'Database name';
$_LANG_PUQ['wf_databases'] = 'Databases';
$_LANG_PUQ['wf_db_create_queued'] = 'Database creation queued — name will be';
$_LANG_PUQ['wf_db_delete_text'] = 'and its user will be removed.';
$_LANG_PUQ['wf_db_limit_reached'] = 'Database limit reached';
$_LANG_PUQ['wf_db_limit_text_a'] = 'Your plan allows';
$_LANG_PUQ['wf_db_limit_text_b'] = 'database(s). Delete an existing one first or upgrade your hosting plan.';
$_LANG_PUQ['wf_db_name_combined'] = 'added automatically; combined length ≤ 32.';
$_LANG_PUQ['wf_db_name_letters'] = 'Letters/digits/underscore.';
$_LANG_PUQ['wf_db_name_start_rule'] = 'Start with a letter, then letters/digits/underscore.';
$_LANG_PUQ['wf_db_queued_deletion'] = 'Database queued for deletion';
$_LANG_PUQ['wf_default_list_not_loaded'] = 'Default list not yet loaded — refresh the page and try again.';
$_LANG_PUQ['wf_defaults'] = 'Defaults';
$_LANG_PUQ['wf_delete'] = 'Delete';
$_LANG_PUQ['wf_delete_database_q'] = 'Delete database?';
$_LANG_PUQ['wf_delete_failed'] = 'Delete failed';
$_LANG_PUQ['wf_delete_ftp_account_q'] = 'Delete FTP account?';
$_LANG_PUQ['wf_disabled'] = 'disabled';
$_LANG_PUQ['wf_disk'] = 'Disk';
$_LANG_PUQ['wf_enabled'] = 'enabled';
$_LANG_PUQ['wf_engine'] = 'Engine';
$_LANG_PUQ['wf_error'] = 'error';
$_LANG_PUQ['wf_ext_invalid'] = 'Invalid extension:';
$_LANG_PUQ['wf_ext_letters_digits'] = 'letters and digits only (no dots, slashes, quotes, etc.)';
$_LANG_PUQ['wf_ext_list_too_long'] = 'Extension list is too long (max 2048 chars).';
$_LANG_PUQ['wf_ext_required'] = 'At least one extension is required.';
$_LANG_PUQ['wf_ext_required_defaults'] = 'At least one extension is required. Use Defaults to restore the recommended list.';
$_LANG_PUQ['wf_ext_too_long'] = 'Extension too long (max 20 chars):';
$_LANG_PUQ['wf_ext_too_many'] = 'Too many extensions (max 200).';
$_LANG_PUQ['wf_failed'] = 'Failed';
$_LANG_PUQ['wf_failed_to_load'] = 'Failed to load';
$_LANG_PUQ['wf_ftp_accounts'] = 'FTP accounts';
$_LANG_PUQ['wf_ftp_create_queued'] = 'FTP account creation queued — username will be';
$_LANG_PUQ['wf_ftp_delete_text'] = 'will be removed. Existing connections will be closed.';
$_LANG_PUQ['wf_ftp_limit_reached'] = 'FTP account limit reached';
$_LANG_PUQ['wf_ftp_limit_text_a'] = 'Your plan allows';
$_LANG_PUQ['wf_ftp_limit_text_b'] = 'FTP account(s) and you already use all of them. Delete an existing account first, or upgrade your hosting plan.';
$_LANG_PUQ['wf_ftp_queued_deletion'] = 'FTP account queued for deletion';
$_LANG_PUQ['wf_ftp_server'] = 'FTP server';
$_LANG_PUQ['wf_ftp_username_rule'] = '1–16 chars, letters/digits/dot/underscore/hyphen.';
$_LANG_PUQ['wf_got_it'] = 'Got it';
$_LANG_PUQ['wf_host'] = 'Host';
$_LANG_PUQ['wf_hosting_configuration'] = 'Hosting configuration';
$_LANG_PUQ['wf_https_applied'] = 'HTTPS redirect applied';
$_LANG_PUQ['wf_https_change_failed'] = 'HTTPS redirect change failed. Try again, or contact support.';
$_LANG_PUQ['wf_https_disabled_queued'] = 'HTTPS redirect DISABLED — queued';
$_LANG_PUQ['wf_https_enabled_queued'] = 'HTTPS redirect ENABLED — queued';
$_LANG_PUQ['wf_https_help'] = 'All <code>http://</code> requests will be 301-redirected to <code>https://</code>.';
$_LANG_PUQ['wf_https_needs_ssl'] = 'Available when an SSL certificate is installed for this domain.';
$_LANG_PUQ['wf_https_redirection'] = 'HTTPS redirection';
$_LANG_PUQ['wf_keep'] = 'Keep';
$_LANG_PUQ['wf_loading_databases'] = 'Loading databases…';
$_LANG_PUQ['wf_loading_ftp_accounts'] = 'Loading FTP accounts…';
$_LANG_PUQ['wf_loading_settings'] = 'Loading settings…';
$_LANG_PUQ['wf_max'] = 'Max';
$_LANG_PUQ['wf_name_user'] = 'Name / User';
$_LANG_PUQ['wf_new_password'] = 'New password';
$_LANG_PUQ['wf_new_password_for'] = 'New password for';
$_LANG_PUQ['wf_no_databases'] = 'No databases yet. Click "Add database" to create one.';
$_LANG_PUQ['wf_no_ftp_accounts'] = 'No FTP accounts yet. Click "Add FTP account" to create one.';
$_LANG_PUQ['wf_no_php_versions'] = '(no PHP versions detected on server)';
$_LANG_PUQ['wf_open_phpmyadmin'] = 'Open phpMyAdmin';
$_LANG_PUQ['wf_password'] = 'Password';
$_LANG_PUQ['wf_password_change_queued'] = 'Password change queued';
$_LANG_PUQ['wf_password_rule'] = 'Min 8 chars, must include UPPER, lower & a digit.';
$_LANG_PUQ['wf_php_applied'] = 'PHP version applied';
$_LANG_PUQ['wf_php_change_failed'] = 'PHP version change failed. Try again, or contact support.';
$_LANG_PUQ['wf_php_version'] = 'PHP version';
$_LANG_PUQ['wf_port'] = 'Port';
$_LANG_PUQ['wf_prefix'] = 'Prefix';
$_LANG_PUQ['wf_proxy_applied'] = 'Proxy extensions applied';
$_LANG_PUQ['wf_proxy_extensions'] = 'Proxy extensions';
$_LANG_PUQ['wf_proxy_help'] = 'Listed extensions are served as static files by nginx (fast) instead of routed through PHP. Comma- or space-separated, e.g.';
$_LANG_PUQ['wf_proxy_update_failed'] = 'Proxy update failed. Try again, or contact support.';
$_LANG_PUQ['wf_proxy_update_queued'] = 'Proxy extensions update queued';
$_LANG_PUQ['wf_queued'] = 'queued';
$_LANG_PUQ['wf_refresh_failed'] = 'Refresh failed';
$_LANG_PUQ['wf_refreshing'] = 'Refreshing…';
$_LANG_PUQ['wf_restore_default_list'] = 'Restore the recommended default list';
$_LANG_PUQ['wf_status'] = 'Status';
$_LANG_PUQ['wf_switching_to_php'] = 'Switching to PHP';
$_LANG_PUQ['wf_update'] = 'Update';
$_LANG_PUQ['wf_used_limit'] = 'Used / limit';
$_LANG_PUQ['wf_username'] = 'Username';
$_LANG_PUQ['wf_web_settings'] = 'Web settings';
$_LANG_PUQ['wf_your_databases'] = 'Your databases';
$_LANG_PUQ['wf_your_ftp_accounts'] = 'Your FTP accounts';

// --- Client-area backend messages (cmsg_*) — auto-translatable via $this->t() ---
$_LANG_PUQ['cmsg_service_not_found'] = 'Service not found';
$_LANG_PUQ['cmsg_access_denied'] = 'Access denied';
$_LANG_PUQ['cmsg_service_has_not_been_provisioned_yet'] = 'Service has not been provisioned yet';
$_LANG_PUQ['cmsg_account_is_being_restored_from_a'] = 'Account is being restored from a backup. Please wait a few minutes and try again.';
$_LANG_PUQ['cmsg_certificate_and_private_key_are_required'] = 'Certificate and private key are required';
$_LANG_PUQ['cmsg_pem_input_is_too_large_limit'] = 'PEM input is too large (limit: 64 KB per field)';
$_LANG_PUQ['cmsg_certificate_must_be_in_pem_format'] = 'Certificate must be in PEM format (BEGIN/END CERTIFICATE block)';
$_LANG_PUQ['cmsg_private_key_must_be_in_pem'] = 'Private key must be in PEM format (BEGIN/END PRIVATE KEY block)';
$_LANG_PUQ['cmsg_password_protected_private_keys_are_not'] = 'Password-protected private keys are not supported — please decrypt the key first';
$_LANG_PUQ['cmsg_certificate_pem_is_invalid_could_not'] = 'Certificate PEM is invalid (could not be parsed)';
$_LANG_PUQ['cmsg_this_is_a_ca_certificate_not'] = 'This is a CA certificate, not a server certificate — install the LEAF cert here and put the CA into the chain field';
$_LANG_PUQ['cmsg_private_key_pem_is_invalid_or'] = 'Private key PEM is invalid or could not be parsed';
$_LANG_PUQ['cmsg_could_not_extract_public_key_from'] = 'Could not extract public key from certificate';
$_LANG_PUQ['cmsg_public_private_key_pair_could_not'] = 'Public/private key pair could not be read';
$_LANG_PUQ['cmsg_certificate_and_private_key_do_not'] = 'Certificate and private key do not match (public keys differ)';
$_LANG_PUQ['cmsg_unsupported_key_type_dsa_dh_use'] = 'Unsupported key type (DSA/DH). Use RSA or EC.';
$_LANG_PUQ['cmsg_chain_pem_must_be_in_begin'] = 'Chain PEM must be in BEGIN/END CERTIFICATE format';
$_LANG_PUQ['cmsg_chain_pem_is_invalid_no_complete'] = 'Chain PEM is invalid (no complete certificate blocks)';
$_LANG_PUQ['cmsg_method_not_allowed_use_post'] = 'Method not allowed — use POST';
$_LANG_PUQ['cmsg_invalid_domain'] = 'Invalid domain';
$_LANG_PUQ['cmsg_this_domain_is_already_used_by'] = 'This domain is already used by another hosting service.';
$_LANG_PUQ['cmsg_service_not_found_or_was_terminated'] = 'Service not found or was terminated';
$_LANG_PUQ['cmsg_internal_unified_server_pointer_missing_con'] = 'Internal: unified server pointer missing — contact support';
$_LANG_PUQ['cmsg_internal_web_mail_server_pointer_missing'] = 'Internal: web/mail server pointer missing — contact support';
$_LANG_PUQ['cmsg_domain_saved_deploying_now'] = 'Domain saved — deploying now.';
$_LANG_PUQ['cmsg_not_allowed_by_your_plan'] = 'Not allowed by your plan';
$_LANG_PUQ['cmsg_not_a_vanity_service'] = 'Not a vanity service';
$_LANG_PUQ['cmsg_not_allowed'] = 'Not allowed';
$_LANG_PUQ['cmsg_no_servers_assigned'] = 'No servers assigned';
$_LANG_PUQ['cmsg_mailbox_not_found'] = 'Mailbox not found';
$_LANG_PUQ['cmsg_your_plan_includes_a_single_mailbox'] = 'Your plan includes a single mailbox, which is already set up.';
$_LANG_PUQ['cmsg_invalid_local_part_letters_digits_dot'] = 'Invalid local part — letters/digits/dot/underscore/hyphen/plus, 1-64 chars';
$_LANG_PUQ['cmsg_password_min_8_chars_and_must'] = 'Password: min 8 chars and must include uppercase, lowercase and a digit.';
$_LANG_PUQ['cmsg_mailbox_limit_reached'] = 'Mailbox limit reached';
$_LANG_PUQ['cmsg_mailbox_already_exists'] = 'Mailbox already exists';
$_LANG_PUQ['cmsg_your_plan_includes_a_single_mailbox_2'] = 'Your plan includes a single mailbox, which cannot be removed here.';
$_LANG_PUQ['cmsg_mailbox_is_locked'] = 'Mailbox is locked';
$_LANG_PUQ['cmsg_cannot_enable_do_not_store_forwarded'] = 'Cannot enable "Do not store forwarded mail" without at least one forward address.';
$_LANG_PUQ['cmsg_db_name_letters_digits_and_underscore'] = 'DB name: letters, digits and underscore only.';
$_LANG_PUQ['cmsg_database_limit_reached'] = 'Database limit reached';
$_LANG_PUQ['cmsg_database_with_that_name_already_exists'] = 'Database with that name already exists';
$_LANG_PUQ['cmsg_database_not_found'] = 'Database not found';
$_LANG_PUQ['cmsg_database_is_locked'] = 'Database is locked';
$_LANG_PUQ['cmsg_dns_records_limit_reached'] = 'DNS records limit reached';
$_LANG_PUQ['cmsg_dns_zone_is_not_deployed_yet'] = 'DNS zone is not deployed yet';
$_LANG_PUQ['cmsg_record_not_found'] = 'Record not found';
$_LANG_PUQ['cmsg_service_has_no_domain_set'] = 'Service has no domain set';
$_LANG_PUQ['cmsg_ftp_username_letters_digits_dot_underscore'] = 'FTP username: letters/digits/dot/underscore/hyphen.';
$_LANG_PUQ['cmsg_ftp_account_already_exists'] = 'FTP account already exists';
$_LANG_PUQ['cmsg_ftp_account_not_found'] = 'FTP account not found';
$_LANG_PUQ['cmsg_ftp_account_is_locked'] = 'FTP account is locked';
$_LANG_PUQ['cmsg_your_plan_backs_up_the_website'] = 'Your plan backs up the website only.';
$_LANG_PUQ['cmsg_your_service_has_no_unified_server'] = 'Your service has no unified server assigned';
$_LANG_PUQ['cmsg_account_backup_queued'] = 'Account backup queued';
$_LANG_PUQ['cmsg_role_must_be_web_or_mail'] = 'role must be web or mail';
$_LANG_PUQ['cmsg_backup_queued'] = 'Backup queued';
$_LANG_PUQ['cmsg_filename_required'] = 'filename required';
$_LANG_PUQ['cmsg_backup_not_found'] = 'Backup not found';
$_LANG_PUQ['cmsg_only_website_backups_apply_to_this'] = 'Only website backups apply to this plan.';
$_LANG_PUQ['cmsg_delete_queued'] = 'Delete queued';
$_LANG_PUQ['cmsg_backup_not_found_or_not_ready'] = 'Backup not found or not ready';
$_LANG_PUQ['cmsg_restore_queued_this_will_overwrite_the'] = 'Restore queued — this will overwrite the current files.';
$_LANG_PUQ['cmsg_kind_must_be_web_or_mail'] = 'kind must be web or mail';
$_LANG_PUQ['cmsg_only_website_ssl_applies_to_this'] = 'Only website SSL applies to this plan.';
$_LANG_PUQ['cmsg_certificate_uploaded_installation_queued'] = 'Certificate uploaded — installation queued.';
$_LANG_PUQ['cmsg_no_custom_ssl_installed_for_this'] = 'No custom SSL installed for this role';
$_LANG_PUQ['cmsg_custom_certificate_removal_queued_ssl_will'] = 'Custom certificate removal queued — SSL will be disabled on the server.';
$_LANG_PUQ['cmsg_kind_must_be_web_mail'] = 'kind must be web|mail';
$_LANG_PUQ['cmsg_service_has_no_domain'] = 'Service has no domain';
$_LANG_PUQ['cmsg_could_not_seed_ssl_auto_row'] = 'Could not seed ssl_auto row';
$_LANG_PUQ['cmsg_issue_queued_check_status_in_1'] = 'Issue queued — check status in ~1 minute';
$_LANG_PUQ['cmsg_invalid_schedule_expected_5_cron_fields'] = 'Invalid schedule — expected 5 cron fields (min hour day month weekday)';
$_LANG_PUQ['cmsg_invalid_command'] = 'Invalid command';
$_LANG_PUQ['cmsg_a_cron_job_with_the_same'] = 'A cron job with the same schedule and command already exists.';
$_LANG_PUQ['cmsg_cron_job_not_found'] = 'Cron job not found';
$_LANG_PUQ['cmsg_cron_job_is_locked'] = 'Cron job is locked';
$_LANG_PUQ['cmsg_web_server_not_found'] = 'Web server not found';
$_LANG_PUQ['cmsg_invalid_template_must_be_php_x'] = 'Invalid template — must be PHP-X_Y';
$_LANG_PUQ['cmsg_backend_template_change_queued'] = 'Backend template change queued';
$_LANG_PUQ['cmsg_unknown_setting'] = 'Unknown setting';
$_LANG_PUQ['cmsg_no_pending_change_to_cancel'] = 'No pending change to cancel';
$_LANG_PUQ['cmsg_change_cancelled'] = 'Change cancelled';
$_LANG_PUQ['cmsg_https_redirect_requires_an_active_ssl'] = 'HTTPS redirect requires an active SSL certificate. Wait for SSL to be issued or upload your own first.';
$_LANG_PUQ['cmsg_https_redirect_change_queued'] = 'HTTPS redirect change queued';
$_LANG_PUQ['cmsg_at_least_one_extension_is_required'] = 'At least one extension is required';
$_LANG_PUQ['cmsg_proxy_extensions_change_queued'] = 'Proxy extensions change queued';
$_LANG_PUQ['cmsg_proxy_disable_queued'] = 'Proxy disable queued';
$_LANG_PUQ['cmsg_no_file_manager_is_installed_on'] = 'No File Manager is installed on this server yet. Please contact support.';
$_LANG_PUQ['cmsg_filegator_is_not_installed_on_this'] = 'FileGator is not installed on this server.';
$_LANG_PUQ['cmsg_net2ftp_is_not_installed_on_this'] = 'net2ftp is not installed on this server.';
$_LANG_PUQ['cmsg_file_manager_endpoint_must_use_https'] = 'File Manager endpoint must use HTTPS. Ask the operator to update the server URL.';
$_LANG_PUQ['cmsg_file_manager_secret_unavailable_decrypt_fai'] = 'File Manager secret unavailable (decrypt failed)';
$_LANG_PUQ['cmsg_service_is_missing_credentials_login_passwo'] = 'Service is missing credentials (login/password/domain) — cannot SSO';
$_LANG_PUQ['cmsg_name_is_required_use_for_the'] = 'Name is required (use "@" for the zone apex).';
$_LANG_PUQ['cmsg_invalid_name_use_for_the_apex'] = 'Invalid name. Use "@" for the apex, a single label like "www", or a subdomain like "blog.shop".';
$_LANG_PUQ['cmsg_value_is_required'] = 'Value is required.';
$_LANG_PUQ['cmsg_a_record_value_must_be_a'] = 'A record value must be a valid IPv4 address (e.g. 192.0.2.1).';
$_LANG_PUQ['cmsg_aaaa_record_value_must_be_a'] = 'AAAA record value must be a valid IPv6 address (e.g. 2001:db8::1).';
$_LANG_PUQ['cmsg_cname_is_not_allowed_at_the'] = 'CNAME is not allowed at the zone apex (@). Use A/AAAA for the apex.';
$_LANG_PUQ['cmsg_priority_is_required_for_mx_records'] = 'Priority is required for MX records (typical: 10).';
$_LANG_PUQ['cmsg_mx_priority_must_be_0_65535'] = 'MX priority must be 0–65535.';
$_LANG_PUQ['cmsg_mx_value_must_be_a_mail'] = 'MX value must be a mail server hostname — "mail" (in-zone) or "mail.example.com." (FQDN).';
$_LANG_PUQ['cmsg_txt_value_cannot_contain_line_breaks'] = 'TXT value cannot contain line breaks — DNS strings are single-line.';
$_LANG_PUQ['cmsg_priority_is_required_for_srv_records'] = 'Priority is required for SRV records.';
$_LANG_PUQ['cmsg_srv_priority_must_be_0_65535'] = 'SRV priority must be 0–65535.';
$_LANG_PUQ['cmsg_srv_value_must_be_weight_port'] = 'SRV value must be "<weight> <port> <target>" — three space-separated fields.';
$_LANG_PUQ['cmsg_srv_weight_must_be_0_65535'] = 'SRV weight must be 0–65535.';
$_LANG_PUQ['cmsg_srv_port_must_be_1_65535'] = 'SRV port must be 1–65535.';
$_LANG_PUQ['cmsg_srv_target_must_be_a_hostname'] = 'SRV target must be a hostname — "sip" (in-zone) or "sip.example.com." (FQDN).';
$_LANG_PUQ['cmsg_caa_value_must_be_flags_0'] = 'CAA value must be "<flags 0-255> <issue|issuewild|iodef> \\"<value>\\"" — e.g. 0 issue "letsencrypt.org".';
$_LANG_PUQ['cmsg_caa_flags_must_be_0_255'] = 'CAA flags must be 0–255.';
$_LANG_PUQ['cmsg_ptr_value_must_be_a_hostname'] = 'PTR value must be a hostname — typically a full FQDN like "host.example.com.".';
$_LANG_PUQ['cmsg_dnskey_value_must_be_4_space'] = 'DNSKEY value must be 4 space-separated fields: "<flags> <protocol> <algorithm> <public-key>".';
$_LANG_PUQ['cmsg_dnskey_flags_must_be_0_65535'] = 'DNSKEY flags must be 0–65535.';
$_LANG_PUQ['cmsg_dnskey_protocol_must_be_0_255'] = 'DNSKEY protocol must be 0–255 (typically 3).';
$_LANG_PUQ['cmsg_dnskey_algorithm_must_be_0_255'] = 'DNSKEY algorithm must be 0–255 (e.g. 13 = ECDSAP256SHA256).';
$_LANG_PUQ['cmsg_dnskey_public_key_must_be_base64'] = 'DNSKEY public key must be base64 (letters, digits, +, /, =).';
$_LANG_PUQ['cmsg_ds_value_must_be_4_space'] = 'DS value must be 4 space-separated fields: "<key-tag> <algorithm> <digest-type> <digest>".';
$_LANG_PUQ['cmsg_ds_key_tag_must_be_0'] = 'DS key-tag must be 0–65535.';
$_LANG_PUQ['cmsg_ds_algorithm_must_be_0_255'] = 'DS algorithm must be 0–255.';
$_LANG_PUQ['cmsg_ds_digest_type_must_be_0'] = 'DS digest-type must be 0–255 (1=SHA1, 2=SHA256, 4=SHA384).';
$_LANG_PUQ['cmsg_ds_digest_must_be_hexadecimal'] = 'DS digest must be hexadecimal.';
$_LANG_PUQ['cmsg_naptr_value_must_be_order_preference'] = 'NAPTR value must be "<order> <preference> \\"flags\\" \\"service\\" \\"regexp\\" <replacement>".';
$_LANG_PUQ['cmsg_naptr_order_must_be_0_65535'] = 'NAPTR order must be 0–65535.';
$_LANG_PUQ['cmsg_naptr_preference_must_be_0_65535'] = 'NAPTR preference must be 0–65535.';
$_LANG_PUQ['cmsg_naptr_replacement_must_be_or_a'] = 'NAPTR replacement must be "." or a hostname.';
$_LANG_PUQ['cmsg_tlsa_value_must_be_4_space'] = 'TLSA value must be 4 space-separated fields: "<usage> <selector> <matching-type> <cert-data>".';
$_LANG_PUQ['cmsg_tlsa_usage_must_be_0_1'] = 'TLSA usage must be 0, 1, 2 or 3.';
$_LANG_PUQ['cmsg_tlsa_selector_must_be_0_or'] = 'TLSA selector must be 0 or 1.';
$_LANG_PUQ['cmsg_tlsa_matching_type_must_be_0'] = 'TLSA matching-type must be 0, 1 or 2.';
$_LANG_PUQ['cmsg_tlsa_certificate_data_must_be_hexadecimal'] = 'TLSA certificate data must be hexadecimal.';
$_LANG_PUQ['cmsg_unknown_log'] = 'Unknown log';
$_LANG_PUQ['cmsg_server_unavailable'] = 'Server unavailable';
$_LANG_PUQ['cmsg_backend_unavailable'] = 'Backend unavailable';
$_LANG_PUQ['cmsg_log_file_missing_on_server'] = 'Log file missing on server';
$_LANG_PUQ['cmsg_log_not_readable_yet'] = 'Log not readable yet';
$_LANG_PUQ['cmsg_tail_failed'] = 'Tail failed';
$_LANG_PUQ['cmsg_log_not_found'] = 'Log not found';
$_LANG_PUQ['cmsg_log_not_readable'] = 'Log not readable';
$_LANG_PUQ['cmsg_log_is_too_large_for_http'] = 'Log is too large for HTTP download (>5 MB).';
$_LANG_PUQ['cmsg_download_failed'] = 'Download failed';
$_LANG_PUQ['cmsg_cert_expired'] = 'Certificate has already expired (notAfter %s)';
$_LANG_PUQ['cmsg_cert_not_valid_yet'] = 'Certificate is not valid yet (notBefore %s)';
$_LANG_PUQ['cmsg_cert_weak_sig'] = 'Certificate uses a weak signature algorithm (%s). Reissue with SHA-256 or stronger.';
$_LANG_PUQ['cmsg_rsa_too_short'] = 'RSA key is too short (%d bits). Minimum is 2048.';
$_LANG_PUQ['cmsg_ec_too_short'] = 'EC key is too short (%d bits). Minimum is 256.';
$_LANG_PUQ['cmsg_chain_cert_invalid'] = 'Chain certificate #%d is invalid';
$_LANG_PUQ['cmsg_cert_no_cover'] = 'This certificate does not cover %s (CN/SAN: %s)';
$_LANG_PUQ['cmsg_service_status_disabled'] = 'This service is %s — changes are disabled.';
$_LANG_PUQ['cmsg_unknown_action'] = 'Unknown action: %s';
$_LANG_PUQ['cmsg_mailbox_locked'] = 'Mailbox is locked (status: %s)';
$_LANG_PUQ['cmsg_mailbox_extras_missing'] = 'Mailbox extras not yet provisioned in DB (missing column: %s). Ask the WHMCS admin to click "Repair tables" on the puq_web_hosting addon home page, then try again.';
$_LANG_PUQ['cmsg_wipe_failed'] = 'Wipe failed: %s';
$_LANG_PUQ['cmsg_inline_render_failed'] = 'Inline render failed: %s (queued for async retry)';
$_LANG_PUQ['cmsg_ftp_limit'] = 'FTP account limit reached (%s/%s). Delete an unused account or upgrade your hosting plan.';
$_LANG_PUQ['cmsg_enqueue_failed'] = 'Enqueue failed: %s';
$_LANG_PUQ['cmsg_invalid_extension'] = 'Invalid extension: %s';
$_LANG_PUQ['cmsg_fm_unreachable'] = 'File Manager unreachable: %s';
$_LANG_PUQ['cmsg_fm_sso_refused'] = 'File Manager SSO refused: %s';
$_LANG_PUQ['cmsg_fm_non_json'] = 'File Manager returned non-JSON (HTTP %s). See module log for details.';
$_LANG_PUQ['cmsg_invalid_record_type'] = 'Invalid record type. Supported: %s';
$_LANG_PUQ['cmsg_no_role_server'] = 'Service has no %s server';
$_LANG_PUQ['cmsg_txt_control_chars'] = 'TXT value contains control characters that DNS doesn\'t allow.';
$_LANG_PUQ['cmsg_backup_removed'] = 'Backup removed';

// --- Stage labels (stage_*) — client 'in progress' badges ---
$_LANG_PUQ['stage_adding_dns_record'] = 'Adding DNS record';
$_LANG_PUQ['stage_adding_scheduled_task'] = 'Adding scheduled task';
$_LANG_PUQ['stage_changing_domain'] = 'Changing domain';
$_LANG_PUQ['stage_checking_ssl_readiness'] = 'Checking SSL readiness';
$_LANG_PUQ['stage_checking_mail_restore_progress'] = 'Checking mail restore progress';
$_LANG_PUQ['stage_checking_restore_progress'] = 'Checking restore progress';
$_LANG_PUQ['stage_cleaning_up'] = 'Cleaning up';
$_LANG_PUQ['stage_configuring_backups'] = 'Configuring backups';
$_LANG_PUQ['stage_configuring_domain'] = 'Configuring domain';
$_LANG_PUQ['stage_configuring_mail'] = 'Configuring mail';
$_LANG_PUQ['stage_configuring_mail_backups'] = 'Configuring mail backups';
$_LANG_PUQ['stage_configuring_mail_plan'] = 'Configuring mail plan';
$_LANG_PUQ['stage_configuring_web_hosting'] = 'Configuring web hosting';
$_LANG_PUQ['stage_configuring_web_plan'] = 'Configuring web plan';
$_LANG_PUQ['stage_creating_ftp_account'] = 'Creating FTP account';
$_LANG_PUQ['stage_creating_backup'] = 'Creating backup';
$_LANG_PUQ['stage_creating_database'] = 'Creating database';
$_LANG_PUQ['stage_creating_mail_backup'] = 'Creating mail backup';
$_LANG_PUQ['stage_creating_mailbox'] = 'Creating mailbox';
$_LANG_PUQ['stage_deploying_dns_records'] = 'Deploying DNS records';
$_LANG_PUQ['stage_disabling_proxy'] = 'Disabling proxy';
$_LANG_PUQ['stage_finalising'] = 'Finalising';
$_LANG_PUQ['stage_installing_ssl_certificate'] = 'Installing SSL certificate';
$_LANG_PUQ['stage_preparing_dns'] = 'Preparing DNS';
$_LANG_PUQ['stage_preparing_dns_zone'] = 'Preparing DNS zone';
$_LANG_PUQ['stage_preparing_your_service'] = 'Preparing your service';
$_LANG_PUQ['stage_rebuilding_service'] = 'Rebuilding service';
$_LANG_PUQ['stage_refreshing_server_status'] = 'Refreshing server status';
$_LANG_PUQ['stage_removing_dns'] = 'Removing DNS';
$_LANG_PUQ['stage_removing_dns_plan'] = 'Removing DNS plan';
$_LANG_PUQ['stage_removing_dns_record'] = 'Removing DNS record';
$_LANG_PUQ['stage_removing_dns_zone'] = 'Removing DNS zone';
$_LANG_PUQ['stage_removing_ftp_account'] = 'Removing FTP account';
$_LANG_PUQ['stage_removing_backup'] = 'Removing backup';
$_LANG_PUQ['stage_removing_database'] = 'Removing database';
$_LANG_PUQ['stage_removing_mail_account'] = 'Removing mail account';
$_LANG_PUQ['stage_removing_mail_backup'] = 'Removing mail backup';
$_LANG_PUQ['stage_removing_mail_plan'] = 'Removing mail plan';
$_LANG_PUQ['stage_removing_mailbox'] = 'Removing mailbox';
$_LANG_PUQ['stage_removing_scheduled_task'] = 'Removing scheduled task';
$_LANG_PUQ['stage_removing_web_account'] = 'Removing web account';
$_LANG_PUQ['stage_removing_web_plan'] = 'Removing web plan';
$_LANG_PUQ['stage_restarting'] = 'Restarting';
$_LANG_PUQ['stage_restoring_dns'] = 'Restoring DNS';
$_LANG_PUQ['stage_restoring_backup'] = 'Restoring backup';
$_LANG_PUQ['stage_restoring_mail'] = 'Restoring mail';
$_LANG_PUQ['stage_restoring_mail_backup'] = 'Restoring mail backup';
$_LANG_PUQ['stage_restoring_web_account'] = 'Restoring web account';
$_LANG_PUQ['stage_setting_up_mail_account'] = 'Setting up mail account';
$_LANG_PUQ['stage_setting_up_web_account'] = 'Setting up web account';
$_LANG_PUQ['stage_suspending_dns'] = 'Suspending DNS';
$_LANG_PUQ['stage_suspending_mail'] = 'Suspending mail';
$_LANG_PUQ['stage_suspending_web_account'] = 'Suspending web account';
$_LANG_PUQ['stage_synchronising_backups'] = 'Synchronising backups';
$_LANG_PUQ['stage_synchronising_mail_backups'] = 'Synchronising mail backups';
$_LANG_PUQ['stage_updating_dns'] = 'Updating DNS';
$_LANG_PUQ['stage_updating_dns_record'] = 'Updating DNS record';
$_LANG_PUQ['stage_updating_ftp_password'] = 'Updating FTP password';
$_LANG_PUQ['stage_updating_https_redirect'] = 'Updating HTTPS redirect';
$_LANG_PUQ['stage_updating_php_version'] = 'Updating PHP version';
$_LANG_PUQ['stage_updating_database_password'] = 'Updating database password';
$_LANG_PUQ['stage_updating_mail_limits'] = 'Updating mail limits';
$_LANG_PUQ['stage_updating_mail_password'] = 'Updating mail password';
$_LANG_PUQ['stage_updating_mailbox'] = 'Updating mailbox';
$_LANG_PUQ['stage_updating_mailbox_password'] = 'Updating mailbox password';
$_LANG_PUQ['stage_updating_mailbox_quota'] = 'Updating mailbox quota';
$_LANG_PUQ['stage_updating_proxy_extensions'] = 'Updating proxy extensions';
$_LANG_PUQ['stage_updating_usage'] = 'Updating usage';
$_LANG_PUQ['stage_updating_web_limits'] = 'Updating web limits';
$_LANG_PUQ['stage_updating_web_password'] = 'Updating web password';
$_LANG_PUQ['stage_working_on_dns'] = 'Working on DNS';
$_LANG_PUQ['stage_working_on_mail'] = 'Working on mail';
$_LANG_PUQ['stage_working_on_server'] = 'Working on server';
$_LANG_PUQ['stage_working_on_web_hosting'] = 'Working on web hosting';
$_LANG_PUQ['stage_working_on_your_service'] = 'Working on your service';
$_LANG_PUQ['stage_working'] = 'Working…';
