<?php
return [
  'meta.description' => 'Mystic Art Tattoo — fine-line, realism, lettering and custom tattoo work.',

  'common.yes'    => 'Yes',
  'common.no'     => 'No',
  'common.save'   => 'Save',
  'common.cancel' => 'Cancel',
  'common.open'   => 'Open',
  'common.edit'   => 'Edit',
  'common.delete' => 'Delete',
  'common.search' => 'Search',
  'common.loading'=> 'Loading…',
  'common.all'    => 'All',
  'common.closed' => 'Closed',
  'common.directions' => 'Get directions',
  'common.watch' => 'Watch',

  'day.mon' => 'Mon',
  'day.tue' => 'Tue',
  'day.wed' => 'Wed',
  'day.thu' => 'Thu',
  'day.fri' => 'Fri',
  'day.sat' => 'Sat',
  'day.sun' => 'Sun',

  // Nav
  'nav.home'      => 'Home',
  'nav.about'     => 'About',
  'nav.artists'   => 'Artists',
  'nav.portfolio' => 'Portfolio',
  'nav.aftercare' => 'Aftercare',
  'nav.contact'   => 'Contact',
  'nav.book'      => 'Book now',

  // Footer
  'footer.visit'  => 'Visit',
  'footer.hours'  => 'Hours',
  'footer.follow' => 'Follow',
  'footer.navigate' => 'Navigate',
  'footer.rights'   => 'All rights reserved.',

  // Home
  'home.kicker'            => 'Est. New Jersey',
  'home.hero.title'        => 'Fine art, worn for a lifetime.',
  'home.hero.subtitle'     => 'Custom tattoos in fine-line, realism, black & gray, color and lettering — crafted by a team obsessed with the details.',
  'home.hero.cta_book'     => 'Book a session',
  'home.hero.cta_view'     => 'View portfolio',
  'home.hero.scroll'       => 'Scroll',
  'home.story.kicker'      => 'Our story',
  'home.story.title'       => 'A studio built on craft and trust.',
  'home.story.body'        => 'Mystic Art Tattoo is a modern studio that blends traditional discipline with contemporary technique. Every piece is a collaboration — your story, our hands. Clean tools, private space, no shortcuts.',
  'home.story.learn_more'  => 'More about the studio',
  'home.artists.kicker'    => 'The team',
  'home.artists.title'     => 'Meet the artists.',
  'home.artists.view_all'  => 'View all',
  'home.artists.empty'     => 'Artists coming soon.',
  'home.portfolio.kicker'  => 'Our work',
  'home.portfolio.title'   => 'Every piece tells a story.',
  'home.portfolio.view_all'=> 'View full portfolio',

  'home.cta.kicker'        => 'Ready?',
  'home.cta.title'         => 'Let\'s make it permanent.',
  'home.cta.body'          => 'Tell us what you\'re dreaming of. We\'ll get back to you with availability within 24 hours.',
  'home.cta.button'        => 'Start booking',

  // Pages
  'page.home.title'       => 'Home',
  'page.about.title'      => 'About the studio',
  'page.about.kicker'     => 'Who we are',
  'page.about.p1'         => 'Mystic Art Tattoo is a studio dedicated to custom, high-quality tattoos. We believe every tattoo should be as unique as the person wearing it.',
  'page.about.p2'         => 'Our artists specialize in different styles — from realism and black & gray to fine-line and lettering — so you can find the right hand for your story.',
  'page.about.p3'         => 'Clean, modern and private, our studio follows the highest sanitation standards and uses only single-use, sterile equipment.',
  'page.about.contact'    => 'Get in touch',

  'page.artists.title'    => 'Artists',
  'page.artists.kicker'   => 'The team',
  'page.artists.intro'    => 'Pick a hand — click any artist to see their work and book a session.',

  'page.artist.kicker'        => 'Artist',
  'page.artist.book_with'     => 'Book with :name',
  'page.artist.portfolio'     => 'Selected work',
  'page.artist.empty_portfolio' => 'Portfolio coming soon.',

  'page.portfolio.title'   => 'Portfolio',
  'page.portfolio.kicker'  => 'Selected work',
  'page.portfolio.intro'   => 'A curated look at recent pieces from our artists.',
  'page.portfolio.filter_all' => 'All',
  'page.portfolio.empty'   => 'Nothing here yet — check back soon.',

  'page.aftercare.title'     => 'Aftercare',
  'page.aftercare.kicker'    => 'Post-session care',
  'page.aftercare.intro'     => 'Please follow these instructions for 30 days after the procedure to improve and prolong the results of your tattoo. If you do not follow these instructions, it can greatly affect the results of your tattoo or jeopardize infection or increase or loss of pigmentation.',
  'page.aftercare.steps_title' => 'How to care for your tattoo',
  'page.aftercare.step_1' => 'Immediately after the procedure, a waterproof plastic is glued on the tattooed area. This must be left on for 24 hours.',
  'page.aftercare.step_2' => 'After 24 hours, it should be removed gently.',
  'page.aftercare.step_3' => 'Wash with bottled water.',
  'page.aftercare.step_4' => 'Dry it gently.',
  'page.aftercare.step_5' => 'Let stand for 1 hour.',
  'page.aftercare.step_6' => 'Then cover it again with another plastic that you must leave for 7 days.',
  'page.aftercare.step_7' => 'At the end of 7 days, remove the plastic gently. Wash with bottled water.',
  'page.aftercare.step_8' => 'Moisturize several times a day with Lubriderm Lotion.',
  'page.aftercare.step_9' => 'Do not expose yourself to the sun, beach or pools for a month. After that time, always apply sunscreen when exposed to sun.',
  'page.aftercare.step_10'=> '10 days without exercise.',
  'page.aftercare.step_11'=> 'Do not use any type of products that contain alcohol.',
  'page.aftercare.step_12'=> 'Do not consume alcohol during the first 10 days after having your tattoo done.',
  'page.aftercare.step_13'=> 'Tattoos break the skin, so infection and allergic reactions are possible. Watch for itchy rash, especially with red, green, yellow or blue pigments.',
  'page.aftercare.infection_title' => 'Signs of infection',
  'page.aftercare.infection_p1' => 'Redness and itching are normal in the first days. But if they persist or get worse after 48 hours, the tattoo may be infected.',
  'page.aftercare.infection_p2' => 'Swelling is normal at first — but if it spreads beyond the tattooed area or the skin starts to deform, it may be a sign of infection.',
  'page.aftercare.infection_p3' => 'Intense pain after the initial healing period, or extreme tenderness, can also indicate infection.',
  'page.aftercare.infection_p4' => 'Fever is a sign your body is fighting infection. If you have a high temperature, see a doctor immediately.',

  'page.contact.title'    => 'Contact',
  'page.contact.kicker'   => 'Get in touch',
  'page.contact.form_title' => 'Send us a message',
  'page.contact.form_hint'  => 'We typically respond within 24 hours.',
  'page.contact.sent'     => 'Message sent. We\'ll be in touch soon.',

  'page.faq.title'   => 'FAQ',
  'page.faq.kicker'  => 'Questions & answers',
  'page.faq.q1' => 'How do I book an appointment?',
  'page.faq.a1' => 'Use the Book button in the menu. Pick an artist, a time, and fill out your details. We\'ll confirm within 24 hours.',
  'page.faq.q2' => 'Do you take walk-ins?',
  'page.faq.a2' => 'Yes, subject to availability. Call the shop first so we can let you know if an artist is free.',
  'page.faq.q3' => 'What\'s the minimum age?',
  'page.faq.a3' => 'You must be 18 or older to be tattooed alone. Minors must come with a parent or legal guardian age 21 or older, with valid photo ID.',
  'page.faq.q4' => 'Do I need a deposit?',
  'page.faq.a4' => 'For larger or custom pieces, yes. The deposit is deducted from the final price and confirms your session.',
  'page.faq.q5' => 'Can I bring my own design?',
  'page.faq.a5' => 'Absolutely. Bring a reference and we\'ll work with you to adapt it to look great as a tattoo.',
  'page.faq.q6' => 'How should I prepare?',
  'page.faq.a6' => 'Get a good night\'s sleep, eat a full meal, and stay hydrated. Avoid alcohol the day before.',
  'page.faq.q7' => 'What if I need to cancel?',
  'page.faq.a7' => 'Please let us know at least 48 hours in advance so we can free up the slot for someone else.',
  'page.faq.q8' => 'Do you offer cover-ups?',
  'page.faq.a8' => 'Yes — bring a clear photo of the existing tattoo and we\'ll advise on options.',

  // Forms
  'form.name'        => 'Name',
  'form.first_name'  => 'First name',
  'form.last_name'   => 'Last name',
  'form.email'       => 'Email',
  'form.phone'       => 'Phone',
  'form.message'     => 'Message',
  'form.send'        => 'Send',
  'form.address'     => 'Address',
  'form.city'        => 'City',
  'form.state'       => 'State',
  'form.zip'         => 'ZIP',
  'form.dob'         => 'Date of birth',
  'form.gender'      => 'Gender',
  'form.ethnicity'   => 'Ethnicity',
  'form.occupation'  => 'Occupation',
  'form.sessions_needed' => 'Sessions needed',
  'form.emergency_name'  => 'Emergency contact name',
  'form.emergency_phone' => 'Emergency contact phone',
  'form.relationship'    => 'Relationship',
  'form.referral_source' => 'How did you hear about us?',
  'form.status'      => 'Status',
  'form.updated'     => 'Updated',

  // Booking wizard
  'booking.kicker'        => 'Book an appointment',
  'booking.title'         => 'Let\'s set up your session.',
  'booking.subtitle'      => 'Six quick steps. You can save and continue later.',
  'booking.next'          => 'Continue',
  'booking.back'          => 'Back',
  'booking.next_month'    => 'Next',
  'booking.prev'          => 'Previous',
  'booking.no_preference' => 'No preference',
  'booking.no_preference_hint' => 'Let the shop pick the best artist for your piece',
  'booking.resumed'       => 'Welcome back. We picked up where you left off.',

  'booking.steps.artist'   => 'Artist',
  'booking.steps.datetime' => 'Date & time',
  'booking.steps.info'     => 'Your info',
  'booking.steps.age'      => 'Age check',
  'booking.steps.tattoo'   => 'Tattoo',
  'booking.steps.review'   => 'Review',

  'booking.step_1.title'       => 'Pick your artist',
  'booking.step_1.pick_artist' => 'Pick your artist',
  'booking.step_2.title'       => 'Pick a date & time',
  'booking.step_2.pick_date'   => 'Pick a date & time',
  'booking.step_2.hint'        => 'Tap a date to see time slots. Available slots are shown in gold.',
  'booking.step_2.available_slots' => 'Time slots',
  'booking.step_2.pick_date_first' => 'Pick a date to see available times.',
  'booking.step_2.no_slots'    => 'No slots on this date.',
  'booking.step_2.selected_label' => 'Selected',
  'booking.step_2.taken'       => 'Taken',
  'booking.step_2.past'        => 'Past',
  'booking.step_2.available'   => 'Open',
  'booking.step_1.current_selection' => 'Current selection',
  'booking.step_1.picked_prefix'  => 'Artist selected',
  'booking.step_1.none_picked'    => 'Pick one to continue',
  'booking.step_3.title'       => 'Your information',
  'booking.step_4.title'       => 'Age verification',
  'booking.step_4.over_18_question' => 'Are you 18 years of age or older?',
  'booking.step_4.guardian_title'   => 'Parent or guardian required',
  'booking.step_4.guardian_body'    => 'You must come to your appointment with a parent or legal guardian age 21 or older. Both you and your guardian must bring a valid photo ID.',
  'booking.step_4.guardian_ack'     => 'I understand I must come with a parent/legal guardian age 21+.',
  'booking.step_5.title'       => 'Tell us about the tattoo',
  'booking.step_5.description' => 'Describe what you want',
  'booking.step_5.description_hint' => 'Style, subject, mood — the more detail the better',
  'booking.step_5.size'        => 'Size',
  'booking.step_5.placement'   => 'Placement on body',

  'booking.review.title'    => 'Review your booking',
  'booking.review.artist'   => 'Artist',
  'booking.review.datetime' => 'Date & time',
  'booking.review.name'     => 'Name',
  'booking.review.contact'  => 'Contact',
  'booking.review.tattoo'   => 'Tattoo',
  'booking.review.confirm'  => 'Confirm & submit',

  'booking.errors.pick_slot'     => 'Please pick a time slot.',
  'booking.errors.required_info' => 'Please fill in all required fields.',
  'booking.errors.guardian_required' => 'A guardian acknowledgement is required for minors.',
  'booking.errors.resume_not_found'  => 'We couldn\'t find that saved booking.',
  'booking.errors.slot_taken'        => 'Sorry, that time slot was just taken. Please pick a different time.',

  // Reschedule (public)
  'reschedule.approved_title'  => 'New time confirmed!',
  'reschedule.approved_body'   => 'Your appointment has been moved and automatically approved.',
  'reschedule.approved_note'   => 'Please arrive on time with a valid photo ID.',
  'reschedule.new_time'        => 'Your new appointment',
  'reschedule.rejected_title'  => 'Time declined',
  'reschedule.rejected_body'   => 'No worries — your original appointment time is still in place. We\'ll reach out to find a time that works better.',
  'reschedule.rejected_note'   => 'Feel free to contact us if you\'d like to discuss other options.',
  'reschedule.invalid_title'   => 'Link expired',
  'reschedule.invalid_body'    => 'This reschedule link is no longer valid. It may have already been used or the proposal was withdrawn.',
  'reschedule.conflict_title'  => 'Slot no longer available',
  'reschedule.conflict_body'   => 'Sorry, the proposed time has already been taken. Please contact the shop to arrange a different time.',

  'booking.confirm.title'  => 'Booking received',
  'booking.confirm.body'   => 'A confirmation has been sent to :email. We\'ll review your request and contact you soon.',
  'booking.confirm.reference' => 'Reference number',
  'booking.confirm.continue_form' => 'Finish my intake form online',
  'booking.confirm.back_home' => 'Back to home',

  // Hub
  'hub.staff_workspace' => 'Staff workspace',
  'hub.signed_in_as'    => 'Signed in as',
  'hub.logout'          => 'Sign out',
  'hub.back_to_list'    => 'Back',

  'hub.nav.today'         => 'Today',
  'hub.nav.appointments'  => 'Appointments',
  'hub.nav.customers'     => 'Customers',
  'hub.nav.forms'         => 'Forms',
  'hub.nav.walkin'        => 'Walk-in',
  'hub.nav.new_appt'      => 'New appointment',
  'hub.nav.admin'         => 'Admin panel',
  'hub.nav.account'       => 'My account',

  'error.csrf_expired'       => 'Your session expired. Please try again.',
  'error.500.flash'          => 'Something went wrong. Please try again.',

  // 403 error page
  'error.403.title'          => 'Access restricted',
  'error.403.generic'        => 'You don\'t have permission to view this area.',
  'error.403.logged_as'      => 'You\'re currently signed in as :name (:role).',
  'error.403.need_admin'     => 'This area requires an admin account.',
  'error.403.switch_account' => 'Sign in as admin',
  'error.403.login_as_admin' => 'Sign in with admin credentials',
  'error.403.back_to_hub'    => 'Back to hub',
  'error.403.try_login'      => 'Sign in with a different account',

  'hub.login.title'    => 'Staff login',
  'hub.login.username' => 'Username',
  'hub.login.password' => 'Password',
  'hub.login.submit'   => 'Sign in',
  'hub.login.invalid'  => 'Invalid username or password.',
  'hub.login.required' => 'Please sign in.',

  'hub.change_password.kicker'  => 'Security',
  'hub.change_password.title'   => 'Set your new password',
  'hub.change_password.body'    => 'You were given a temporary password. Please create a new one to secure your account.',
  'hub.change_password.new'     => 'New password',
  'hub.change_password.confirm' => 'Confirm new password',
  'hub.change_password.hint'    => 'Minimum 8 characters.',
  'hub.change_password.save'    => 'Set my password',
  'hub.change_password.too_short' => 'Password must be at least 8 characters.',
  'hub.change_password.mismatch'  => 'Passwords do not match.',
  'hub.change_password.success'   => 'Password updated. Welcome!',

  'hub.setup_pin.kicker'  => 'One-time setup',
  'hub.setup_pin.title'   => 'Create your PIN',
  'hub.setup_pin.body'    => 'Hi :name — pick a 4 to 6 digit PIN. You\'ll use it to confirm important actions in the shop.',
  'hub.setup_pin.pin'     => 'New PIN',
  'hub.setup_pin.confirm' => 'Confirm PIN',
  'hub.setup_pin.save'    => 'Set my PIN',
  'hub.setup_pin.invalid' => 'PINs must match and be 4–6 digits.',
  'hub.setup_pin.success' => 'PIN set successfully.',

  'hub.pin.username'    => 'Username',
  'hub.pin.pin'         => 'PIN',
  'hub.pin.confirm'     => 'Confirm',
  'hub.pin.enter_credentials' => 'Enter your staff credentials to confirm this action.',
  'hub.pin.invalid'     => 'Invalid username or PIN.',
  'hub.pin.staff_confirmation' => 'Staff confirmation (username + PIN)',

  'hub.dashboard.title'    => 'Today',
  'hub.dashboard.kicker'   => 'Shop hub',
  'hub.dashboard.greeting' => 'Hey :name',
  'hub.dashboard.morning'  => 'Good morning',
  'hub.dashboard.afternoon'=> 'Good afternoon',
  'hub.dashboard.evening'  => 'Good evening',
  'hub.dashboard.new_walkin' => 'Walk-in',
  'hub.dashboard.todays'   => 'Today\'s schedule',
  'hub.dashboard.view_all' => 'View all',
  'hub.dashboard.no_appointments_today' => 'No appointments scheduled for today.',
  'hub.dashboard.pending_need_review' => 'appointments need review',
  'hub.dashboard.pending_hint' => 'Tap to review and approve pending bookings.',

  'hub.appointments.title'    => 'Appointments',
  'hub.appointments.kicker'   => 'Manage bookings',
  'hub.appointments.empty'    => 'No appointments here.',
  'hub.appointments.new'      => 'New appointment',
  'hub.appointments.today'    => 'Today',
  'hub.appointments.tomorrow' => 'Tomorrow',
  'hub.appointments.booked'   => 'Booked',
  'hub.appointments.approved' => 'Appointment approved.',
  'hub.appointments.canceled' => 'Appointment canceled.',
  'hub.appointments.completed'=> 'Appointment completed.',

  'hub.appointment.kicker'      => 'Appointment',
  'hub.appointment.when'        => 'When',
  'hub.appointment.artist'      => 'Artist',
  'hub.appointment.customer'    => 'Customer',
  'hub.appointment.no_customer' => 'No customer linked',
  'hub.appointment.view_profile'=> 'View profile',
  'hub.appointment.intake_form' => 'Intake form',
  'hub.appointment.no_form'     => 'No form linked yet.',
  'hub.appointment.open_form'   => 'Open form',
  'hub.appointment.approve'     => 'Approve',
  'hub.appointment.approve_title' => 'Approve appointment',
  'hub.appointment.mark_complete' => 'Mark completed',
  'hub.appointment.complete_title'=> 'Mark appointment completed',
  'hub.appointment.cancel'           => 'Cancel appointment',
  'hub.appointment.cancel_title'           => 'Cancel appointment',
  'hub.appointment.cancel_confirm_text'   => 'This will cancel the appointment and notify the customer and staff.',
  'hub.appointment.cancel_reason'         => 'Reason for cancellation',
  'hub.appointment.cancel_reason_placeholder' => 'Schedule conflict, artist unavailable, customer request…',
  'hub.appointment.share_reason_customer' => 'Share the reason with the customer in the email',
  'hub.appointment.share_reason_hint'     => 'If unchecked, only staff and the assigned artist will see the reason.',
  'hub.appointment.confirm_cancel'        => 'Cancel appointment',
  'hub.appointment.cancel_confirm'   => 'Cancel this appointment?',
  'hub.appointment.actions'          => 'Actions',
  'hub.appointment.status_completed' => 'This appointment is completed.',
  'hub.appointment.status_canceled'  => 'This appointment was canceled.',
  'hub.appointment.canceled_by'      => 'Canceled by',
  'hub.appointment.approved_by'      => 'Approved by',
  'hub.appointment.completed_by'     => 'Completed by',
  'hub.appointment.details'          => 'Appointment details',
  'hub.appointment.booked_on'        => 'Booked on',
  'hub.appointment.notes'           => 'Staff notes',
  'hub.appointment.notes_placeholder' => 'Add a note for the customer (included in the confirmation email)…',
  'hub.appointment.save_notes'      => 'Save note',
  'hub.appointment.notes_saved'     => 'Note saved.',
  'hub.appointment.no_notes'           => 'No notes.',
  'hub.appointment.reschedule'         => 'Propose new time',
  'hub.appointment.reschedule_pending' => 'Reschedule pending',
  'hub.appointment.reschedule_pending_desc' => 'A new time has been proposed and is waiting for customer approval:',
  'hub.appointment.reschedule_sent'    => 'Reschedule proposal sent to the customer.',
  'hub.appointment.reschedule_missing' => 'Please select a new date and time.',
  'hub.appointment.new_date'           => 'New date',
  'hub.appointment.new_time'           => 'New time',
  'hub.appointment.reason'             => 'Reason (optional)',
  'hub.appointment.reason_placeholder' => 'Why the time change?',
  'hub.appointment.send_proposal'      => 'Send proposal to customer',

  'hub.customers.title'   => 'Customers',
  'hub.customers.kicker'  => 'Customer records',
  'hub.customers.search_placeholder' => 'Search by name, phone, email, address…',
  'hub.customers.empty'   => 'No customers yet.',
  'hub.customers.no_results' => 'No matches.',
  'hub.customers.back'           => 'Back to customers',
  'hub.customers.deleted'        => 'Customer removed.',
  'hub.customers.deleted_notice' => 'This customer has been removed from the active list.',
  'hub.customers.delete_customer'=> 'Remove customer',
  'hub.customers.delete_warning' => 'This will remove the customer from the active list. All records are preserved for admin review. Your credentials are required.',
  'hub.customers.confirm_delete' => 'Confirm remove',

  'hub.customer.appointments'    => 'Appointments',
  'hub.customer.forms'           => 'Forms',
  'hub.customer.no_appointments' => 'No appointments yet.',
  'hub.customer.no_forms'        => 'No forms.',
  'hub.customer.total_visits'    => 'Completed visits',
  'hub.customer.upcoming'        => 'Upcoming',
  'hub.customer.visit_history'   => 'All appointments',
  'hub.customer.view_form'       => 'Form',
  'hub.customer.standalone_forms'=> 'Other forms',

  'hub.forms.title'  => 'Intake forms',
  'hub.forms.kicker' => 'Paperwork',
  'hub.forms.new'    => 'New form',
  'hub.forms.empty'  => 'No forms here.',

  'hub.form.title'   => 'Intake form',
  'hub.form.kicker'  => 'Customer paperwork',
  'hub.form.save'    => 'Save progress',
  'hub.form.saved'   => 'Form saved.',
  'hub.form.signed'  => 'Form signed and locked.',
  'hub.form.signed_at' => 'Signed at',
  'hub.form.sign_creds_hint' => 'Enter your staff username + PIN (admins can use their password). This ties the signing action to your account.',
  'hub.form.action_hint'     => 'All fields above will be saved with either button.',

  'intake.public.kicker'    => 'Intake form',
  'intake.public.title'     => 'Please complete your intake form',
  'intake.public.subtitle'  => 'Fill this out online ahead of your appointment — it will save you time the day of your session.',
  'intake.public.your_appt' => 'Your appointment',
  'intake.public.with_artist' => 'With artist',
  'intake.public.general_hint' => 'Please review and complete your contact and emergency information.',
  'intake.public.body_hint' => 'Click anywhere on the figure below to mark where you want the tattoo. You can tap again to move the marker.',
  'intake.public.sign_at_shop_title' => 'You will sign in person at the studio',
  'intake.public.sign_at_shop_body'  => 'To keep things simple and legally binding, we ask you to review and sign this form on our iPad when you arrive for your appointment. Everything you fill in here will be pre-loaded for you.',
  'intake.public.save_submit' => 'Save & submit my form',
  'intake.public.saved_flash' => 'Your form was saved. You can come back and edit it until you sign at the shop.',
  'intake.public.locked_flash'=> 'This form has been signed and is now locked.',

  'intake.confirmed.title'        => 'Form submitted!',
  'intake.confirmed.body'         => 'Your intake form has been saved and submitted. You\'ll complete the final signature in person when you arrive at the studio.',
  'intake.confirmed.your_appt'    => 'Your appointment',
  'intake.confirmed.your_artist'  => 'Your artist',
  'intake.confirmed.submitted_for'=> 'Submitted for',
  'intake.confirmed.next_steps'   => 'What happens next',
  'intake.confirmed.step_1'       => 'We\'ll review your information before your appointment.',
  'intake.confirmed.step_2'       => 'When you arrive at the studio, we\'ll pull up your form on the iPad for you to review and sign.',
  'intake.confirmed.step_3'       => 'Once signed, your artist will begin your session. Bring a valid photo ID.',
  'intake.confirmed.edit_btn'     => 'Edit my form',
  'intake.confirmed.home_btn'     => 'Back to home',
  'intake.confirmed.email_note'   => 'You can return to this form anytime using the link from your confirmation email.',

  'hub.walkin.title'   => 'New walk-in',
  'hub.walkin.kicker'  => 'Walk-in customer',
  'hub.walkin.intro'   => 'Start by searching for an existing customer — or create a fresh record.',
  'hub.walkin.search_existing' => 'Search existing customers',
  'hub.walkin.search_placeholder' => 'Name, phone, email, address…',
  'hub.walkin.no_matches' => 'No matches — create a new record below.',
  'hub.walkin.new_customer' => 'Create new customer',
  'hub.walkin.use_existing' => 'Use this record',
  'hub.walkin.start' => 'Start form',
  'hub.walkin.staff_only_notice' => 'Staff only. Your credentials are required to start a new form — this creates an audit log entry tied to your account.',

  'hub.new_appt.title'        => 'New appointment',
  'hub.new_appt.kicker'       => 'Book for customer',
  'hub.new_appt.returning'    => 'Returning customer — search to pre-fill',
  'hub.new_appt.new_customer' => 'New customer',
  'hub.new_appt.use_customer' => 'Use this customer',
  'hub.new_appt.artist'       => 'Artist',
  'hub.new_appt.date'         => 'Appointment date',
  'hub.new_appt.time'         => 'Appointment time',
  'hub.new_appt.create_btn'   => 'Create appointment',
  'hub.new_appt.created'      => 'Appointment created.',
  'hub.new_appt.name_required'=> 'First and last name are required.',

  'hub.table.time'     => 'Time',
  'hub.table.when'     => 'When',
  'hub.table.customer' => 'Customer',
  'hub.table.artist'   => 'Artist',
  'hub.table.status'   => 'Status',
  'hub.table.source'   => 'Source',

  // Account
  'hub.account.title'              => 'My account',
  'hub.account.kicker'             => 'Account settings',
  'hub.account.change_password'    => 'Change password',
  'hub.account.current_password'   => 'Current password',
  'hub.account.new_password'       => 'New password',
  'hub.account.confirm_password'   => 'Confirm new password',
  'hub.account.password_hint'      => 'Minimum 8 characters.',
  'hub.account.save_password'      => 'Update password',
  'hub.account.change_pin'         => 'Change PIN',
  'hub.account.current_pin'        => 'Current PIN',
  'hub.account.new_pin'            => 'New PIN',
  'hub.account.confirm_pin'        => 'Confirm new PIN',
  'hub.account.pin_hint'           => '4–6 digit PIN used to confirm appointments and sign forms.',
  'hub.account.save_pin'           => 'Update PIN',
  'hub.account.password_changed'   => 'Password updated.',
  'hub.account.pin_changed'        => 'PIN updated.',
  'hub.account.wrong_current_password' => 'Current password is incorrect.',
  'hub.account.wrong_current_pin'  => 'Current PIN is incorrect.',
  'hub.account.password_too_short' => 'Password must be at least 8 characters.',
  'hub.account.password_mismatch'  => 'Passwords do not match.',
  'hub.account.pin_format'         => 'PIN must be 4–6 digits.',
  'hub.account.pin_mismatch'       => 'PINs do not match.',
  'hub.account.schedule_title'     => 'My schedule',
  'hub.account.schedule_hint'      => 'Set your available days and hours. Customers will only see appointment slots during these times.',
  'hub.account.add_day'            => '+ Add day',
  'hub.account.save_schedule'      => 'Save schedule',
  'hub.account.schedule_saved'     => 'Schedule saved.',

  // Appt statuses
  'appt.status.pending'   => 'Pending',
  'appt.status.approved'  => 'Approved',
  'appt.status.upcoming'  => 'Upcoming',
  'appt.status.completed' => 'Completed',
  'appt.status.canceled'  => 'Canceled',
  'appt.status.no_show'   => 'No-show',
  'appt.status.all'       => 'All',

  // Intake form
  'intake.general.title'    => 'General information',
  'intake.medical.title'    => 'Medical information',
  'intake.medical.hint'     => 'Check any conditions that apply:',
  'intake.medical.heart_disease'        => 'Heart disease',
  'intake.medical.diabetes'             => 'Diabetes',
  'intake.medical.hypertension'         => 'Hypertension',
  'intake.medical.mitral_valve_prolapse'=> 'Mitral valve prolapse',
  'intake.medical.cancer'               => 'Cancer',
  'intake.medical.asthma'               => 'Asthma',
  'intake.medical.obesity'              => 'Obesity',
  'intake.medical.thyroid_disease'      => 'Thyroid disease',
  'intake.medical.aids_hiv_positive'    => 'AIDS / HIV positive',
  'intake.medical.healing_problems'     => 'Problems with healing',
  'intake.medical.keloid'               => 'Keloid',
  'intake.medical.seizures'             => 'Seizures',
  'intake.medical.dermatological_disorder' => 'Dermatological disorder',
  'intake.medical.hemophilia'           => 'Hemophilia / clotting disorder',
  'intake.medical.autoimmune'           => 'Autoimmune disorder',
  'intake.medical.allergies'            => 'Allergies',
  'intake.medical.other'                => 'Other conditions',
  'intake.medical.on_medication'        => 'Are you currently taking any medication?',
  'intake.medical.medication_notes'     => 'Please explain',

  'intake.waiver.title' => 'Liability waiver',
  'intake.waiver.hint'  => 'Please read each clause and initial the box next to it.',
  'intake.waiver.autofill_hint' => 'Type your initials once; tap any other box to auto-fill it with the same initials.',
  'intake.waiver.c1' => 'I waive and release, to the fullest extent permitted by law, any person from the Tattoo Studio for any liability whatsoever, including any claims of action that I, my heirs, executors or assigns may have for personal injury or otherwise.',
  'intake.waiver.c2' => 'The Tattoo Studio has given me the full opportunity to ask any questions about the procedure and application of my tattoo, and all my questions have been answered to my full satisfaction.',
  'intake.waiver.c3' => 'The Tattoo Studio has given me care instructions. I acknowledge that the tattoo can become infected, particularly if I do not follow the instructions. If any touch-up work is needed due to my own negligence, I will pay for the work myself.',
  'intake.waiver.c4' => 'I am not under the influence of alcohol or drugs. I do not suffer from any condition that may interfere with the procedure. I am not the recipient of an organ or bone marrow transplant. I am not pregnant or nursing. I do not have a mental illness that may affect my judgement.',
  'intake.waiver.c5' => 'The Tattoo Studio is not responsible for the meaning or spelling of the symbol or text that I provide. Variations in color and design may exist between the tattoo art I selected and the actual tattoo.',
  'intake.waiver.c6' => 'Tattoo removal is only possible by laser or surgical means, which can be disfiguring and likely will not restore skin to its original appearance. I release any rights to photographs of me and the tattoo for reproduction in print or electronic form.',
  'intake.waiver.c7' => 'I agree that the Tattoo Studio has a NO REFUND policy on tattoos, piercing and retail sales. I agree to reimburse the Studio for any attorneys\' fees and costs in any legal action I bring against them.',
  'intake.waiver.c8' => 'I declare that I am of legal age, have provided valid proof of age and identification, and am competent to sign this agreement. I have read, understand, and agree to be bound by this waiver.',

  'intake.body.title'      => 'Body placement',
  'intake.body.body_part'  => 'In which part of the body will the tattoo be made?',
  'intake.body.hint'       => 'Click on the figure to mark the placement',
  'intake.body.multi_hint' => 'You can add multiple marks for multiple tattoos. Each click adds a numbered pin.',
  'intake.body.no_marks'   => 'No placements marked yet.',
  'intake.body.clear_all'  => 'Clear all',
  'intake.body.clear'      => 'Clear marks',
  'intake.body.pigments'   => 'Pigments used',

  'intake.aftercare_ack' => 'The customer has been given the aftercare instructions and acknowledges them.',

  'intake.signature.title'   => 'Customer signature',
  'intake.signature.hint'    => 'The customer should sign below on the iPad.',
  'intake.signature.clear'   => 'Clear signature',
  'intake.signature.submit'  => 'Sign & lock form',
  'intake.signature.already' => 'This form has been signed and locked.',

  // Admin
  'admin.management' => 'Management',
  'admin.nav.overview' => 'Overview',
  'admin.nav.users'    => 'Users',
  'admin.nav.staff'    => 'Staff',
  'admin.nav.artists'  => 'Artists',
  'admin.nav.gallery'  => 'Gallery',
  'admin.nav.audit'    => 'Audit log',
  'admin.nav.settings' => 'Settings',
  'admin.nav.back_to_hub' => '← Back to hub',

  'admin.overview.title'  => 'Overview',
  'admin.overview.kicker' => 'Admin panel',
  'admin.overview.recent' => 'Recent appointments',
  'admin.overview.no_activity' => 'Nothing to show yet.',
  'admin.stats.customers' => 'Customers',
  'admin.stats.artists'   => 'Artists',
  'admin.stats.pending'   => 'Pending',
  'admin.stats.completed' => 'Completed',

  'admin.users.title'  => 'Users',
  'admin.users.kicker' => 'Customer records',
  'admin.users.search' => 'Search users…',
  'admin.users.empty'  => 'No users yet.',
  'admin.users.back'   => 'Back to users',
  'admin.users.joined' => 'Joined',
  'admin.user.appointments' => ':count appointments',
  'admin.user.forms'        => ':count forms',

  'admin.staff.title'   => 'Staff',
  'admin.staff.kicker'  => 'Workers & admins',
  'admin.staff.add_new' => 'Add a new staff account',
  'admin.staff.username' => 'Username',
  'admin.staff.temp_password' => 'Temporary password',
  'admin.staff.role'    => 'Role',
  'admin.staff.status'  => 'Status',
  'admin.staff.active'  => 'Active',
  'admin.staff.disabled'=> 'Disabled',
  'admin.staff.pin_set' => 'PIN set',
  'admin.staff.pin_not_set' => 'Not set',
  'admin.staff.reset_pin' => 'Reset PIN',
  'admin.staff.disable' => 'Disable',
  'admin.staff.enable'  => 'Enable',
  'admin.staff.create_btn' => 'Create staff account',
  'admin.staff.created' => 'Staff account created.',
  'admin.staff.invalid' => 'Please fill all required fields (password 8+ chars).',
  'admin.staff.duplicate_username' => 'That username is already taken.',
  'admin.staff.pin_reset'        => 'PIN reset. Worker will set a new one on next login.',
  'admin.staff.reset_password'   => 'Reset password',
  'admin.staff.password_reset'      => 'Password reset successfully.',
  'admin.staff.password_too_short'  => 'Password must be at least 8 characters.',
  'admin.staff.link_artist_profile' => 'Link to artist profile',
  'admin.staff.no_link'             => 'No link',

  'admin.artists.title'        => 'Artists',
  'admin.artists.kicker'       => 'The team',
  'admin.artists.add_new'      => 'Add a new artist',
  'admin.artists.display_name' => 'Display name',
  'admin.artists.specialties'  => 'Specialties (comma separated)',
  'admin.artists.bio'          => 'Bio',
  'admin.artists.avatar'       => 'Avatar image',
  'admin.artists.instagram'    => 'Instagram handle (without @)',
  'admin.artists.active'       => 'Active',
  'admin.artists.schedule'     => 'Schedule',
  'admin.artists.edit_schedule'=> 'Edit weekly schedule',
  'admin.artists.create_btn'   => 'Create artist',
  'admin.artists.created'      => 'Artist created.',
  'admin.artists.updated'      => 'Artist updated.',
  'admin.artists.back'         => 'Back to artists',
  'admin.artists.delete'       => 'Delete artist',
  'admin.artists.delete_confirm' => 'Delete this artist? This cannot be undone.',

  'admin.schedule.title'     => 'Schedule',
  'admin.schedule.weekly'    => 'Weekly availability',
  'admin.schedule.add_exception' => 'Add an exception (day off / special hours)',
  'admin.schedule.date'      => 'Date',
  'admin.schedule.start'     => 'Start time',
  'admin.schedule.end'       => 'End time',
  'admin.schedule.day_off'   => 'Day off',
  'admin.schedule.reason'    => 'Reason',
  'admin.schedule.upcoming_exceptions' => 'Upcoming exceptions',
  'admin.schedule.saved'     => 'Schedule saved.',

  'admin.gallery.title'      => 'Gallery',
  'admin.gallery.kicker'     => 'Public portfolio',
  'admin.gallery.upload'     => 'Upload file',
  'admin.gallery.artist'     => 'Artist',
  'admin.gallery.unassigned' => 'Unassigned',
  'admin.gallery.tags'       => 'Tags (comma separated)',
  'admin.gallery.caption'    => 'Caption',
  'admin.gallery.add'        => 'Add to gallery',
  'admin.gallery.added'      => 'Gallery item added.',
  'admin.gallery.deleted'    => 'Gallery item removed.',
  'admin.gallery.empty'      => 'No gallery items yet.',
  'admin.gallery.unsupported'=> 'Unsupported file type.',
  'admin.gallery.upload_failed' => 'Upload failed.',
  'admin.gallery.tab_upload' => 'Upload file',
  'admin.gallery.tab_url'    => 'Paste video URL',
  'admin.gallery.upload_hint'=> 'JPG, PNG, WebP, GIF images — MP4, WebM, MOV videos (up to 100 MB).',
  'admin.gallery.drop_hint'  => 'Click to choose a file or drag & drop',
  'admin.gallery.uploading'  => 'Uploading…',
  'admin.gallery.upload_success' => 'Uploaded successfully!',
  'admin.gallery.change_file'     => 'Change',
  'admin.gallery.file_too_large'  => 'File is too large for the server',
  'admin.gallery.server_error_hint' => 'The server may need to be restarted with higher upload limits.',
  'admin.gallery.video_url'  => 'Video URL (YouTube, Vimeo, or direct MP4)',
  'admin.gallery.video_url_hint' => 'The video will play inline on the site with no branding other than ours. Example: https://www.youtube.com/watch?v=ABC123',
  'admin.gallery.thumb_url'  => 'Custom thumbnail URL (optional — for YouTube/Vimeo it auto-uses the default poster)',
  'admin.gallery.nothing_to_save' => 'Upload a file or paste a video URL first.',
  'admin.gallery.unsupported_url' => 'Unsupported URL. Use YouTube, Vimeo, or a direct MP4 link.',

  'admin.audit.title'             => 'Audit log',
  'admin.audit.kicker'            => 'Traceability',
  'admin.audit.empty'             => 'No log entries yet.',
  'admin.audit.no_results'        => 'No entries match your filters.',
  'admin.audit.entries_shown'     => 'entries',
  'admin.audit.when'              => 'When',
  'admin.audit.who'               => 'Who',
  'admin.audit.staff'             => 'Staff',
  'admin.audit.action'            => 'Action',
  'admin.audit.target'            => 'Target',
  'admin.audit.search'            => 'Search',
  'admin.audit.search_placeholder'=> 'Search by name, action, target…',
  'admin.audit.filter_staff'      => 'Filter by person',
  'admin.audit.filter_action'     => 'Filter by action',
  'admin.audit.all_staff'         => 'All people',
  'admin.audit.all_actions'       => 'All actions',
  'admin.audit.apply'             => 'Apply filters',
  'admin.audit.active_filters'    => 'Active filters',
  'admin.audit.clear_filters'     => 'Clear all',

  'admin.settings.title'    => 'Shop settings',
  'admin.settings.kicker'   => 'Configure the public site',
  'admin.settings.shop_name' => 'Shop name',
  'admin.settings.tagline_en'=> 'Tagline (English)',
  'admin.settings.tagline_es'=> 'Tagline (Spanish)',
  'admin.settings.address'  => 'Address',
  'admin.settings.map_embed'          => 'Google Maps embed URL',
  'admin.settings.google_review'      => 'Google review URL',
  'admin.settings.google_review_hint' => 'Paste your Google Business review link. Customers will see a "Leave a review" button in the aftercare email.',
  'admin.settings.saved'    => 'Settings saved.',
  'admin.settings.hours_hint' => 'Times are shown in 12-hour format on the public site (e.g. 9:00 AM – 4:00 PM). Check "Closed" for days the shop is not open.',

  // Data management
  // SMTP / Email settings
  'admin.smtp.title'               => 'Email configuration',
  'admin.smtp.desc'                => 'Configure the SMTP server used to send all notification emails (booking confirmations, approvals, cancellations).',
  'admin.smtp.from_email'          => 'From email',
  'admin.smtp.from_name'           => 'From name',
  'admin.smtp.host'                => 'SMTP host',
  'admin.smtp.port'                => 'Port',
  'admin.smtp.username'            => 'SMTP username',
  'admin.smtp.password'            => 'SMTP password',
  'admin.smtp.password_hint'       => 'For Gmail, use a 16-character App Password (not your regular password).',
  'admin.smtp.save_btn'            => 'Save email settings',
  'admin.smtp.test_title'          => 'Send a test email',
  'admin.smtp.test_desc'           => 'Verify your email settings are working by sending a test to any address.',
  'admin.smtp.test_btn'            => 'Send test',
  'admin.smtp.test_sent'           => 'Test email sent — check your inbox.',
  'admin.smtp.test_failed'         => 'Failed to send test email. Check your SMTP settings.',
  'admin.smtp.test_invalid_email'  => 'Please enter a valid email address.',
  'admin.smtp.guide_title'         => 'How to set up your own email',
  'admin.smtp.guide_subtitle'      => 'Step-by-step for Gmail, Namecheap, or custom domain',

  'admin.data.title'                => 'Data management',
  'admin.data.export_title'         => 'Export all data',
  'admin.data.export_desc'          => 'Download a complete JSON backup of all appointments, customers, forms, gallery, and settings.',
  'admin.data.export_btn'           => 'Download backup',
  'admin.data.import_title'         => 'Import data',
  'admin.data.import_desc'          => 'Restore data from a previously exported JSON backup file.',
  'admin.data.import_btn'           => 'Import',
  'admin.data.import_file'          => 'Backup JSON file',
  'admin.data.confirm_import'       => 'Import data',
  'admin.data.imported'             => ':count records imported.',
  'admin.data.no_file'              => 'No file selected.',
  'admin.data.invalid_file'         => 'Invalid JSON file.',
  'admin.data.clear_title'          => 'Clear data',
  'admin.data.clear_desc'           => 'Permanently remove appointments and/or customer records. Staff accounts and settings are preserved.',
  'admin.data.clear_btn'            => 'Clear data',
  'admin.data.clear_warning'        => 'This action is irreversible. Export a backup first if you want to keep a copy.',
  'admin.data.clear_what'           => 'What to clear',
  'admin.data.clear_appointments_only' => 'Appointments only',
  'admin.data.clear_all'            => 'All appointments + customers + forms',
  'admin.data.admin_password'       => 'Your admin password (to confirm)',
  'admin.data.export_first'         => 'We recommend downloading a backup before clearing.',
  'admin.data.confirm_clear'        => 'Permanently clear',
  'admin.data.cleared'              => 'Data cleared.',
  'admin.data.wrong_password'       => 'Incorrect admin password.',
];
