{
  "version": 3,
  "sources": ["/cdn/shop/t/92/assets/florame-native-i18n.js?florame_i18n=20260430i"],
  "sourcesContent": ["(function () {\r\n  'use strict';\r\n\r\n  var CONFIG = Object.assign({\r\n    defaultLanguage: 'it',\r\n    supportedLanguages: ['it', 'en'],\r\n    storageKey: 'florame_native_lang',\r\n    autoSwitcher: false,\r\n    customerAccountCountry: 'IT',\r\n    linkSelector: 'a[href^=\"/\"], a[href^=\"https://florame.ai\"], a[href^=\"https://www.florame.ai\"], a[href^=\"https://account.florame.ai\"], a[href^=\"https://shopify.com/\"], a[href^=\"https://customer-account.shopify.com/\"], a[data-florame-account-link]',\r\n    dynamicTranslation: true,\r\n    translationEndpoint: 'https://us-central1-flower-ai-2d7aa.cloudfunctions.net/translateTextBatch',\r\n    dynamicCacheKey: 'florame_native_i18n_dynamic_v2',\r\n    dynamicCacheLimit: 300\r\n  }, window.__florameNativeI18nConfig || {});\r\n\r\n  var BRAND_SELECTOR = '#floramePartnerDetailsTitle, [data-create-partner-copy], .florame-story-bubble__label, .florame-marketplace-card__brand strong, .florame-marketplace-product-preview__body > .florame-marketplace-eyebrow, .florame-marketplace-compare-card__brand strong, .florame-map-shop__identity > strong, .awi-create-context-trigger__copy small, [data-create-context-florist-copy] strong, .florame-matched-florist .florame-delivery-intent-summary__copy > strong';\r\n  var SKIP_SELECTOR = [\r\n    BRAND_SELECTOR,\r\n    'script',\r\n    'style',\r\n    'noscript',\r\n    'iframe',\r\n    'canvas',\r\n    'svg',\r\n    'path',\r\n    'textarea',\r\n    'code',\r\n    'pre',\r\n    '.notranslate',\r\n    '.gtranslate_wrapper',\r\n    '#gt_float_wrapper',\r\n    '.gt_float_switcher',\r\n    '[translate=\"no\"]',\r\n    '[data-florame-card-message]',\r\n    '[data-florame-no-translate]',\r\n    '.florame-no-translate',\r\n    '.recap-note-card .note-text',\r\n    '.customer-card-message',\r\n    '.gift-card-message',\r\n    '.order-card-message',\r\n    '[data-native-i18n-skip]',\r\n    '[data-i18n-skip]'\r\n  ].join(',');\r\n\r\n  var ATTRIBUTE_SKIP_SELECTOR = [\r\n    BRAND_SELECTOR,\r\n    'script',\r\n    'style',\r\n    'noscript',\r\n    'iframe',\r\n    'canvas',\r\n    'svg',\r\n    'path',\r\n    'code',\r\n    'pre',\r\n    '.notranslate',\r\n    '.gtranslate_wrapper',\r\n    '#gt_float_wrapper',\r\n    '.gt_float_switcher',\r\n    '[translate=\"no\"]',\r\n    '[data-florame-card-message]',\r\n    '[data-florame-no-translate]',\r\n    '.florame-no-translate',\r\n    '.recap-note-card .note-text',\r\n    '.customer-card-message',\r\n    '.gift-card-message',\r\n    '.order-card-message',\r\n    '[data-native-i18n-skip]',\r\n    '[data-i18n-skip]'\r\n  ].join(',');\r\n\r\n  var DYNAMIC_SKIP_SELECTOR = [\r\n    'input',\r\n    'textarea',\r\n    'select',\r\n    'option',\r\n    'form',\r\n    '.cart-drawer',\r\n    '#CartDrawer',\r\n    '.delivery-scheduler-container',\r\n    '[data-florame-messages-app]',\r\n    '[data-florame-order-app]',\r\n    '[data-florame-native-account]',\r\n    '[data-florame-delete-account]',\r\n    '[data-native-i18n-sensitive]',\r\n    '[data-i18n-sensitive]'\r\n  ].join(',');\r\n\r\n  var TEXT = {\r\n    'Guide': 'Guides',\r\n    'Come funziona florame.ai?': 'How does florame.ai work?',\r\n    'Posso creare il bouquet fiore per fiore?': 'Can I create my bouquet flower by flower?',\r\n    'Scegli fiori, colori, numero di steli e confezione. Controlla gli ingredienti e affina l\u2019anteprima AI prima di inviare la richiesta.': 'Choose flowers, colours, stem counts and wrapping. Review your ingredients and refine the AI preview before sending the request.',\r\n    'Scopri il configuratore': 'Discover the configurator',\r\n    'Dove posso inviare i fiori?': 'Where can I send flowers?',\r\n    'florame.ai \u00E8 attualmente operativo in Italia. Verifica indirizzo completo, giorno e fascia. Puoi inviare fiori in Italia anche dall\u2019estero, secondo copertura e opzioni al checkout.': 'florame.ai currently operates in Italy. Check the full recipient address, day and time window. You can also send flowers to Italy while abroad, subject to coverage and checkout options.',\r\n    'Scopri consegna e ritiro': 'Explore delivery and pickup',\r\n    'Cosa succede dopo l\u2019invio della richiesta?': 'What happens after I send the request?',\r\n    'Il fiorista conferma se pu\u00F2 realizzarla. In Messaggi segui risposta e stato del pagamento. Controlla riepilogo e condizioni di pagamento al checkout.': 'The florist confirms whether they can fulfil it. Follow the reply and payment status in Messages. Review the summary and payment terms at checkout.',\r\n    'Scopri ordini e pagamenti': 'Explore orders and payments',\r\n    'Come creo un bouquet personalizzato?': 'How do I create a custom bouquet?',\r\n    'Scegli ogni fiore, colore e numero di steli. Controlla gli ingredienti e usa l\u2019anteprima AI per affinare la tua idea.': 'Choose each flower, colour and stem count. Review the ingredients and use the AI preview to refine your idea.',\r\n    'Dove consegna florame.ai?': 'Where does florame.ai deliver?',\r\n    'Attualmente in Italia, dopo la verifica di indirizzo, data e fascia.': 'Currently in Italy, subject to an address, date and time-window check.',\r\n    'Ordini e pagamenti: la guida completa': 'Orders and payments: the complete guide',\r\n    'Oggi dai fioristi': 'Today at the florists',\r\n    'Mappa': 'Map',\r\n    'Informativa sulle spedizioni': 'Delivery policy',\r\n    'Nebbiolina \u00B7 Verde': 'Gypsophila \u00B7 Greenery',\r\n    'Florame: bouquet locali, personalizzati con l\\'AI': 'Florame: local bouquets, personalized with AI',\r\n    'Crea bouquet unici con l\\'AI, in pochi tap | Florame': 'Create unique bouquets with AI in just a few taps | Florame',\r\n    'Crea ora': 'Create now',\r\n    'Zero sorprese: il bouquet che vedi \u00E8 quello che ricevi': 'No surprises: the bouquet you see is the bouquet you receive',\r\n    'Crea bouquet con l\u2019AI basati sulla reale disponibilit\u00E0 dei fiori.': 'Create AI bouquets based on real flower availability.',\r\n    'Crea bouquet con l\\'AI basati sulla reale disponibilit\u00E0 dei fiori.': 'Create AI bouquets based on real flower availability.',\r\n    'Crea il tuo bouquet': 'Create your bouquet',\r\n    'Crea il tuo bouquet IA in 60s!': 'Create your AI bouquet in 60 seconds!',\r\n    'Personalizza ogni dettaglio e vedi subito l\u2019anteprima del tuo bouquet': 'Customize every detail and instantly preview your bouquet',\r\n    'Personalizza ogni dettaglio e vedi subito l\\'anteprima del tuo bouquet': 'Customize every detail and instantly preview your bouquet',\r\n    'Inizia Ora': 'Start now',\r\n    'Cosa ti aspetta?': 'What can you expect?',\r\n    'Personalizzazione totale': 'Full customization',\r\n    'Scegli fiori, packaging e colori in pochi tap.': 'Choose flowers, packaging and colors in a few taps.',\r\n    'Anteprima istantanea': 'Instant preview',\r\n    'Guarda subito come sar\u00E0 il tuo bouquet grazie all\u2019IA.': 'See what your bouquet will look like right away, thanks to AI.',\r\n    'Guarda subito come sar\u00E0 il tuo bouquet grazie all\\'IA.': 'See what your bouquet will look like right away, thanks to AI.',\r\n    'Consegna in 24h': 'Delivery in 24h',\r\n    'Fiori freschi a casa tua in un giorno.': 'Fresh flowers at home in one day.',\r\n    'Qualit\u00E0 garantita': 'Guaranteed quality',\r\n    'Qualita garantita': 'Guaranteed quality',\r\n    'Solo fiori selezionati giorno per giorno.': 'Only flowers selected day by day.',\r\n    'Consenso ai cookie': 'Cookie consent',\r\n    'GESTISCI LE PREFERENZE': 'MANAGE PREFERENCES',\r\n    'ACCETTA': 'ACCEPT',\r\n    'Accetta': 'Accept',\r\n    'Continua senza accettare': 'Continue without accepting',\r\n    'Noi e i nostri partner, incluso Shopify, utilizziamo cookie e altre tecnologie per personalizzare la tua esperienza, mostrare annunci e misurare le prestazioni.': 'We and our partners, including Shopify, use cookies and similar technologies to personalize your experience, show ads and measure performance.',\r\n    'Noi e i nostri partner, incluso Shopify, utilizziamo cookie e altre tecnologie per personalizzare la tua esperienza, mostrarti annunci ed eseguire analisi. Non utilizzeremo cookie o altre tecnologie per questi scopi senza il tuo consenso. Scopri di pi\u00F9 nella nostra Informativa sulla privacy': 'We and our partners, including Shopify, use cookies and similar technologies to personalize your experience, show you ads and run analytics. We will not use cookies or similar technologies for these purposes without your consent. Learn more in our Privacy Policy.',\r\n    'Noi e i nostri partner, incluso Shopify, utilizziamo cookie e altre tecnologie per personalizzare la tua esperienza, mostrarti annunci ed eseguire analisi. Non utilizzeremo cookie o altre tecnologie per questi scopi senza il tuo consenso. Scopri di pi\u00F9 nella nostra': 'We and our partners, including Shopify, use cookies and similar technologies to personalize your experience, show you ads and run analytics. We will not use cookies or similar technologies for these purposes without your consent. Learn more in our',\r\n    'Scopri di pi\u00F9 nella nostra Informativa sulla privacy': 'Learn more in our Privacy Policy',\r\n    'Informativa sulla privacy': 'Privacy Policy',\r\n    'L\u2019app sta arrivando \uD83C\uDF38': 'The app is coming \uD83C\uDF38',\r\n    'Nel frattempo puoi gi\u00E0 progettare e ordinare dalla Web App.': 'In the meantime, you can already design and order from the Web App.',\r\n    'Apri la Web App': 'Open the Web App',\r\n    'Non ora': 'Not now',\r\n    'STEP 1': 'STEP 1',\r\n    'inserisci un indirizzo d\\'esempio in cui vorresti che fosse attivo florame.ai': 'enter an example address where you would like florame.ai to be active',\r\n\r\n    'Benvenuto su': 'Welcome to',\r\n    'Benvenuto su florame.ai': 'Welcome to florame.ai',\r\n    'Navigazione Home Florame': 'Florame Home navigation',\r\n    'Dove consegniamo': 'Where should we deliver',\r\n    'Aggiungi indirizzo': 'Add address',\r\n    'Aggiungi indirizzo di consegna': 'Add delivery address',\r\n    'Apri carrello': 'Open cart',\r\n    'Apri account': 'Open account',\r\n    'Trova il bouquet giusto': 'Find the right bouquet',\r\n    'Esplora la vetrina': 'Explore the showcase',\r\n    'Filtra i bouquet della Home': 'Filter Home bouquets',\r\n    'Vetrina': 'Showcase',\r\n    'Scelti dal fiorista': 'Florist\u2019s picks',\r\n    'Scelto dal fiorista': 'Florist\u2019s pick',\r\n    'Scelto dal fiorista.': 'Florist\u2019s pick.',\r\n    'Carico la selezione': 'Loading the selection',\r\n    'Tutti disponibili': 'All available',\r\n    'Nel suo stock': 'In their stock',\r\n    'Tendenza': 'Trending',\r\n    'Tendenze': 'Trending',\r\n    'Pi\u00F9 apprezzati': 'Most popular',\r\n    'Novit\u00E0': 'New',\r\n    'Appena creati': 'Recently created',\r\n    'Le tue raccolte': 'Your collections',\r\n    'Bouquet personali': 'Personal bouquets',\r\n    'I miei bouquet': 'My bouquets',\r\n    'Creati da te': 'Created by you',\r\n    'Preferiti': 'Favorites',\r\n    'Salvati da te': 'Saved by you',\r\n    'Le tue creazioni': 'Your creations',\r\n    'I tuoi preferiti': 'Your favorites',\r\n    'Scopri bouquet': 'Discover bouquets',\r\n    'Mostra i bouquet': 'Show bouquets',\r\n    'Viste del catalogo': 'Catalog views',\r\n    'La sua selezione': 'Their selection',\r\n    'Selezione del fiorista': 'Florist\u2019s selection',\r\n    'Bouquet di oggi': 'Today\u2019s bouquets',\r\n    'Scegli come riceverlo': 'Choose how to receive it',\r\n    'Consegna o ritiro?': 'Delivery or pickup?',\r\n    'A domicilio': 'To your door',\r\n    'Ritiro in negozio': 'Store pickup',\r\n    'Passa da noi': 'Come to us',\r\n    'Confronta fioristi': 'Compare florists',\r\n    'Prezzi, tempi e disponibilit\u00E0': 'Prices, timing and availability',\r\n    'Inserisci indirizzo': 'Enter address',\r\n    'Mostro la vetrina del fiorista.': 'Showing the florist\u2019s showcase.',\r\n    'Disponibile dal fiorista': 'Available from this florist',\r\n    'Consegna da verificare': 'Delivery to check',\r\n    'Consegna oggi': 'Delivery today',\r\n    'Controlla consegna': 'Check delivery',\r\n    'Controlla se il fiorista consegna al destinatario': 'Check whether the florist delivers to the recipient',\r\n    'Scegli come riceverlo': 'Choose how to receive it',\r\n    'Consegna o ritiro?': 'Delivery or pickup?',\r\n    'Imposta consegna': 'Set delivery',\r\n    'Ritiro': 'Pickup',\r\n    'Confronta': 'Compare',\r\n    'Cambia o confronta fiorista': 'Change or compare florist',\r\n    'Dove deve arrivare?': 'Where should it be delivered?',\r\n    'Controlla se il fiorista scelto consegna l\u00EC.': 'Check whether the selected florist delivers there.',\r\n    'Usa la mia posizione': 'Use my location',\r\n    'Controlla l\u2019indirizzo: al checkout non potrai cambiarlo.': 'Check the address: you cannot change it at checkout.',\r\n    'Informazioni sul fiorista': 'Florist information',\r\n    'Modalit\u00E0 di ricezione': 'Fulfilment method',\r\n    'Confronta fioristi per prezzi, tempi e disponibilit\u00E0': 'Compare florists by price, timing and availability',\r\n    'Indirizzo completo': 'Full address',\r\n    'Via, numero civico, citt\u00E0': 'Street, house number, city',\r\n    'Controllo fiorista e consegna...': 'Checking florist and delivery...',\r\n    'Disponibilit\u00E0 verificata per questo indirizzo.': 'Availability verified for this address.',\r\n    'Consegna a': 'Deliver to',\r\n    'Cambia': 'Change',\r\n    'Oppure crealo tu': 'Or create your own',\r\n    'Su misura': 'Made to measure',\r\n    'Scelti da questo fiorista': 'Chosen by this florist',\r\n    'Nuovo su Florame': 'New on Florame',\r\n    'Orari e contatti': 'Hours and contacts',\r\n    'Termini': 'Terms',\r\n    'Rimborsi': 'Refunds',\r\n    'Consegne': 'Delivery',\r\n    'Contatti': 'Contacts',\r\n    'Rivedi le scelte cookie': 'Review cookie choices',\r\n    'Privacy e informazioni legali': 'Privacy and legal information',\r\n    'Creati': 'Created',\r\n    'Vai alle tue creazioni': 'Go to your creations',\r\n    'Menu Profilo': 'Profile menu',\r\n    'Profilo': 'Profile',\r\n    'Ordini e impostazioni': 'Orders and settings',\r\n    'Accedi a Florame': 'Sign in to Florame',\r\n    'Usa il login social nativo dell\\'app.': 'Use the app\\'s native social login.',\r\n    'Scegli dove e quando': 'Choose where and when',\r\n    'Completa dove e quando': 'Set where and when',\r\n    'Scegli indirizzo, data e fascia: Florame abbina il bouquet al fiorista giusto e verifica il prezzo.': 'Choose an address, date and time slot: Florame matches your bouquet with a florist and checks the price.',\r\n    'Verifica disponibilit\u00E0 e consegna': 'Check availability and delivery',\r\n    'Cambia data o fascia': 'Change date or time slot',\r\n    'Trova chi pu\u00F2 consegnarlo': 'Find a florist who can deliver',\r\n    'Riprova il controllo': 'Retry the check',\r\n    'Avvisami quando torna': 'Notify me when it is back',\r\n    'Ti avviseremo': 'We will notify you',\r\n    'Continua con Google': 'Continue with Google',\r\n    'Continua con Apple': 'Continue with Apple',\r\n    'Usa email': 'Use email',\r\n    'Sessione app attiva': 'App session active',\r\n    'Apertura login...': 'Opening login...',\r\n    'Apertura Apple...': 'Opening Apple...',\r\n    'Apertura Google...': 'Opening Google...',\r\n    'Login nativo non disponibile in questa build.': 'Native login is not available in this build.',\r\n    'Cliente': 'Customer',\r\n    'Ordini recenti': 'Recent orders',\r\n    'Profilo app': 'App profile',\r\n    'Il tuo carrello': 'Your cart',\r\n    'Account Florame': 'Florame account',\r\n    'Men\u00F9': 'Menu',\r\n    'Apri men\u00F9': 'Open menu',\r\n    'Chiudi men\u00F9': 'Close menu',\r\n    'Personalizza il tuo avatar': 'Customize your avatar',\r\n    'Scegli il tuo avatar': 'Choose your avatar',\r\n    'Fai come fossi a casa': 'Make yourself at home',\r\n    'Riprendi bozza': 'Resume draft',\r\n    'Torna al men\u00F9': 'Back to menu',\r\n    'Ordini, profilo e indirizzi in un unico posto.': 'Orders, profile and saved addresses in one place.',\r\n    'Ordini, dati e preferenze sempre a portata di mano.': 'Your orders, details and preferences, always close at hand.',\r\n    'Accedi o crea account': 'Log in or create account',\r\n    'Accesso sicuro gestito da Shopify': 'Secure access powered by Shopify',\r\n    'Ultima generazione': 'Latest generation',\r\n    'Il tuo ultimo bouquet': 'Your latest bouquet',\r\n    'Riapri la creazione': 'Open the creation again',\r\n    'Il tuo account Florame': 'Your Florame account',\r\n    'Segui acquisti, consegna e dettagli ordine': 'Track purchases, delivery and order details',\r\n    'Profilo e indirizzi': 'Profile and addresses',\r\n    'Dati personali e indirizzi di fatturazione': 'Personal details and billing addresses',\r\n    'I bouquet che ti sono piaciuti': 'Bouquets you liked',\r\n    'Le mie creazioni': 'My creations',\r\n    'I bouquet che hai creato': 'Bouquets you created',\r\n    'Bozze': 'Drafts',\r\n    'Continua i bouquet non conclusi': 'Continue unfinished bouquets',\r\n    'Le tue raccolte': 'Your collections',\r\n    'Preferenze': 'Preferences',\r\n    'Lingua': 'Language',\r\n    'Notifiche': 'Notifications',\r\n    'Bloccate nelle impostazioni': 'Blocked in device settings',\r\n    'Vibrazione interfaccia': 'Interface vibration',\r\n    'Installa Florame': 'Install Florame',\r\n    'Accesso pi\u00F9 rapido e notifiche': 'Faster access and notifications',\r\n    'Supporto': 'Support',\r\n    'Chiedi a Florame': 'Ask Florame',\r\n    'AI per scegliere, persone per aiutarti': 'AI to choose, people to help',\r\n    'Supporto Florame': 'Florame support',\r\n    'Risposte chiare su richieste, pagamenti, consegne e assistenza.': 'Clear answers about requests, payments, delivery and support.',\r\n    'Torna all\u2019account': 'Back to account',\r\n    'Domande frequenti': 'Frequently asked questions',\r\n    'Scrivici via email': 'Write to us by email',\r\n    'Ordini e consegne': 'Orders and deliveries',\r\n    'Indica il numero d\u2019ordine per ricevere aiuto pi\u00F9 rapidamente': 'Include your order number so we can help faster',\r\n    'Informazioni e account': 'Information and account',\r\n    'Prodotti, account, pagamenti o domande generali': 'Products, account, payments or general questions',\r\n    'Privacy e dati personali': 'Privacy and personal data',\r\n    'Richieste di accesso, modifica o cancellazione': 'Access, correction or deletion requests',\r\n    'CHAT FLORAME': 'FLORAME CHAT',\r\n    'Apri la chat': 'Open the chat',\r\n    'Aiuto umano per ordini e consegne': 'Human help for orders and deliveries',\r\n    'Preferiti e bozze restano su questo dispositivo finch\u00E9 non accedi.': 'Favorites and drafts stay on this device until you log in.',\r\n    'Perch\u00E9 ogni acquisto viene inviato come richiesta?': 'Why is every purchase sent as a request?',\r\n    'Il fiorista conferma di poter preparare bene il bouquet e rispettare la consegna prima che Florame acquisisca il pagamento. In Messaggi puoi seguire risposta e passaggi successivi.': 'The florist confirms that the bouquet and delivery can be handled properly before Florame captures your payment. You can follow the reply and every next step in Messages.',\r\n    'Cosa cambia tra oggi, domani e una data successiva?': 'What changes for today, tomorrow or a later date?',\r\n    'Per oggi e domani puoi richiedere soltanto bouquet compatibili con lo stock confermato dal fiorista. Dal dopodomani puoi chiedere anche fiori da procurare: il fiorista ne conferma la disponibilit\u00E0 prima dell\u2019addebito.': 'For today and tomorrow, you can only request bouquets that match the florist\u2019s confirmed stock. From the day after tomorrow, you can also request flowers that need sourcing; the florist confirms availability before you are charged.',\r\n    'Quando viene addebitato il pagamento?': 'When will I be charged?',\r\n    'La banca autorizza prima il totale. Florame lo acquisisce soltanto se il fiorista accetta. Se la richiesta viene rifiutata o scade, l\u2019autorizzazione viene rilasciata; la banca pu\u00F2 impiegare qualche giorno a mostrare di nuovo l\u2019importo disponibile.': 'Your bank first authorizes the total. Florame captures it only if the florist accepts. If the request is declined or expires, the authorization is released; your bank may take a few days to show the amount as available again.',\r\n    'Dove vedo la risposta del fiorista?': 'Where can I see the florist\u2019s reply?',\r\n    'Apri Messaggi dalla navigazione principale. La conversazione mostra richiesta, consegna, tempo di risposta e stato del pagamento. Le comunicazioni Florame sono in sola lettura; per parlare con una persona usa la chat di assistenza qui sotto.': 'Open Messages from the main navigation. The conversation shows the request, delivery details, response deadline and payment status. Florame announcements are read-only; use the support chat below when you need a person.',\r\n    'Posso cambiare indirizzo, giorno o fascia?': 'Can I change the address, day or time window?',\r\n    'Prima del pagamento usa sempre lo stesso controllo \u201CDove e quando\u201D. Florame mantiene indirizzo, data e fascia sincronizzati fra negozio, carrello e checkout. Una modifica dopo l\u2019invio della richiesta pu\u00F2 richiedere una nuova conferma del fiorista.': 'Use the same \u201CWhere and when\u201D control before payment. Florame keeps address, date and time window synchronized across the shop, cart and checkout. A change after a request is sent may require the florist to confirm again.',\r\n    'L\u2019anteprima AI sar\u00E0 identica al bouquet reale?': 'Will the AI preview match the real bouquet?',\r\n    'L\u2019anteprima guida colori e stile. I fiori veri cambiano naturalmente; la foto prima della partenza ti permette di controllare il bouquet realmente preparato.': 'The preview guides colors and style. Real flowers naturally vary; the pre-departure photo lets you check the bouquet that was actually prepared.',\r\n    'Perch\u00E9 potreste contattare il destinatario?': 'Why might you contact the recipient?',\r\n    'Diciamo solo che sta arrivando un regalo. Confermare la presenza evita consegne a vuoto senza rovinare la sorpresa.': 'We only say that a gift is arriving. Confirming availability helps avoid missed deliveries without revealing the surprise.',\r\n    'Posso seguire la consegna sulla mappa?': 'Can I track the delivery on a map?',\r\n    'Florame privilegia una fascia di consegna chiara e aggiornamenti utili sull\u2019ordine, invece di una mappa in movimento.': 'Florame focuses on a clear delivery window and useful order updates rather than a moving map.',\r\n    'Come funziona il biglietto?': 'How does the gift card work?',\r\n    'Scrivi il messaggio nel carrello: il fiorista lo prepara insieme ai fiori. Puoi indicare sulla busta un nome diverso da quello della persona che riceve o ritira.': 'Write your message in the cart: the florist prepares it with your flowers. The name on the envelope can be different from the person receiving or collecting.',\r\n    'Ho un problema con un ordine: cosa faccio?': 'I have a problem with an order. What do I do?',\r\n    'Apri la chat qui sotto. Una persona vera pu\u00F2 controllare l\u2019ordine e aiutarti con consegna o modifiche dell\u2019ultimo momento.': 'Open the chat below. A real person can check the order and help with delivery or last-minute changes.',\r\n    'Scegliendo una selezione si ottiene un aggiornamento completo della pagina.': 'Selecting an option refreshes the page.',\r\n    'Si apre in una nuova finestra.': 'Opens in a new window.',\r\n    '1 fiorista da conoscere. Completa la ricerca per la promessa precisa.': '1 florist to discover. Complete your search for the exact promise.',\r\n    '0 fioristi selezionati': '0 florists selected',\r\n    'Completa la ricerca': 'Complete your search',\r\n    'Dove e quando vuoi riceverlo?': 'Where and when would you like it delivered?',\r\n    'Inserisci indirizzo, data e fascia per vedere le opzioni reali.': 'Enter an address, date and time slot to see real options.',\r\n    'Iscriviti gratis': 'Join for free',\r\n    'Accedi, accetta il regolamento e attiva i tuoi punti.': 'Log in, accept the terms and activate your points.',\r\n    'Punti e occasioni': 'Points and occasions',\r\n    'Attivo': 'Active',\r\n    'Caricamento Credito Florame': 'Loading Florame Credit',\r\n    'Saldo Credito Florame': 'Florame Credit balance',\r\n    'Punti disponibili': 'Available points',\r\n    'da usare sui prossimi bouquet': 'to use on your next bouquets',\r\n    'In arrivo': 'Pending',\r\n    'Gi\u00E0 usati': 'Already used',\r\n    'Bonus pianificazione': 'Planning bonus',\r\n    'Non dimenticare chi ami': 'Remember the people you love',\r\n    'Salva una ricorrenza: la ritrovi pronta con i bouquet adatti e premiamo chi si organizza per tempo.': 'Save an occasion to find it ready with suitable bouquets, and earn a reward for planning ahead.',\r\n    'Occasioni suggerite': 'Suggested occasions',\r\n    'San Valentino': 'Valentine\u2019s Day',\r\n    'Festa della mamma': 'Mother\u2019s Day',\r\n    'Compleanno': 'Birthday',\r\n    'Data personale': 'Personal date',\r\n    'La tua occasione': 'Your occasion',\r\n    'Personalizzata': 'Custom',\r\n    'Prenota l\u2019occasione': 'Book the occasion',\r\n    'Chiudi il modulo': 'Close form',\r\n    'Tipo': 'Type',\r\n    'Occasione personalizzata': 'Custom occasion',\r\n    'Nome occasione': 'Occasion name',\r\n    'Es. Compleanno di Giulia': 'E.g. Julia\u2019s birthday',\r\n    'Per chi': 'For whom',\r\n    'Nome (facoltativo)': 'Name (optional)',\r\n    'Ricordamelo ogni anno': 'Remind me every year',\r\n    'Salva e ricevi i punti': 'Save and earn points',\r\n    'Le tue regole': 'Your rules',\r\n    'Il Club, in breve': 'Your Club at a glance',\r\n    'Ottieni': 'Earn',\r\n    'sugli acquisti idonei': 'on eligible purchases',\r\n    'Puoi usare': 'You can use',\r\n    'del valore dell\u2019ordine': 'of the order value',\r\n    'Validit\u00E0': 'Validity',\r\n    'dal momento dell\u2019accredito': 'from the credit date',\r\n    'Occasioni': 'Occasions',\r\n    'per una nuova data idonea': 'for a new eligible date',\r\n    'I punti diventano disponibili dopo la consegna. Nel carrello vedi sempre quanto puoi usare.': 'Points become available after delivery. The cart always shows how much you can use.',\r\n    'Impostazioni Club': 'Club settings',\r\n    'Adesione, regole e ricorrenze restano sempre consultabili.': 'Membership, rules and occasions are always available to review.',\r\n    'Iscritto': 'Member',\r\n    'Occasioni e promemoria': 'Occasions and reminders',\r\n    'Aggiungi o rimuovi compleanni, anniversari e festivit\u00E0.': 'Add or remove birthdays, anniversaries and holidays.',\r\n    'Regole punti e credito': 'Points and credit rules',\r\n    '100 punti = 1 \u20AC; qui trovi maturazione, uso e scadenza.': '100 points = \u20AC1; see how points mature, can be used and expire.',\r\n    'Assistenza e iscrizione': 'Support and membership',\r\n    'Chiedi supporto o la chiusura dell\u2019adesione al Club.': 'Ask for support or to end your Club membership.',\r\n    'Movimenti': 'Activity',\r\n    'Nessun movimento: il primo credito comparir\u00E0 qui.': 'No activity yet: your first credit will appear here.',\r\n    'Assistenza Florame Club': 'Florame Club support',\r\n    'Regolamento': 'Terms',\r\n    'Assistenza o uscita dal Club': 'Support or leave the Club',\r\n    'Iscriviti gratis in un minuto.': 'Join for free in one minute.',\r\n    'Accetta il regolamento e attiva il Club: da quel momento accumuli punti Florame. 100 punti valgono 1 \u20AC sui prossimi ordini.': 'Accept the terms and activate the Club to start earning Florame points. 100 points are worth \u20AC1 on future orders.',\r\n    'di credito sugli acquisti idonei': 'credit on eligible purchases',\r\n    'massimo utilizzabile per ordine': 'maximum usable per order',\r\n    'per usarlo con calma': 'to use it at your own pace',\r\n    'quando pianifichi una nuova occasione idonea': 'when you plan a new eligible occasion',\r\n    'Ho letto e accetto il': 'I have read and accept the',\r\n    'regolamento Florame Club': 'Florame Club terms',\r\n    'Attiva Florame Club': 'Activate Florame Club',\r\n    'Anniversario': 'Anniversary',\r\n    'Festa della donna': 'International Women\u2019s Day',\r\n    'Festa del pap\u00E0': 'Father\u2019s Day',\r\n    'Laurea': 'Graduation',\r\n    'Matrimonio': 'Wedding',\r\n    'Natale': 'Christmas',\r\n    'Occasione speciale': 'Special occasion',\r\n    'Prenota ora': 'Book now',\r\n    'Attiva punti, premi e promemoria': 'Activate points, rewards and reminders',\r\n    'Conferma le nuove regole': 'Confirm the updated terms',\r\n    'Accesso completato.': 'Signed in.',\r\n    'Accesso non completato. Riprova.': 'Sign in was not completed. Try again.',\r\n    'Uscita...': 'Signing out...',\r\n    'Uscita non completata.': 'Sign out was not completed.',\r\n    'Aggiornamenti Florame': 'Florame updates',\r\n    'Notifiche sugli ordini e aggiornamenti Florame': 'Order notifications and Florame updates',\r\n    'Notifiche': 'Notifications',\r\n    'Attive': 'On',\r\n    'Spente': 'Off',\r\n    'Controllo...': 'Checking...',\r\n    'Aggiorno...': 'Updating...',\r\n    'Non supportate': 'Not supported',\r\n    'Permesso bloccato': 'Permission blocked',\r\n    'Apri da Home': 'Open from Home',\r\n    'Non disponibile': 'Unavailable',\r\n    'Logout dall\u2019account': 'Account logout',\r\n    'Logout dall\\'account': 'Account logout',\r\n    'Aiuto': 'Help',\r\n    'Chat e supporto': 'Chat and support',\r\n    'Esci': 'Log out',\r\n    'Crea con AI': 'Create with AI',\r\n    'Guidato dalla magia': 'Guided by magic',\r\n    'Crea da Zero': 'Create from scratch',\r\n    'Componi tu': 'Build it yourself',\r\n    'Esplora Idee': 'Explore ideas',\r\n    'Lasciati ispirare dalla community': 'Get inspired by the community',\r\n    'Archivio': 'Archive',\r\n    'Lasciati guidare dalla magia dell\\'AI.': 'Let AI magic guide you.',\r\n    'Lasciati guidare dalla magia dell\u2019AI.': 'Let AI magic guide you.',\r\n    'Prova ora': 'Try now',\r\n    'I miei Preferiti': 'My favorites',\r\n    'Esplora e lascia un like ai tuoi preferiti.': 'Explore and like your favorites.',\r\n    'Accedi per mettere mi piace.': 'Log in to like this.',\r\n    'Selezione non valida: nessun fiore riconosciuto. Cambia variante e riprova.': 'Invalid selection: no recognized flowers. Change variant and try again.',\r\n    'Generazione immagine avviata...': 'Image generation started...',\r\n    'Generazione in corso...': 'Generating...',\r\n    'Proposta caricata nell\u2019editor!': 'Proposal loaded into the editor!',\r\n    'Feedback negativo registrato. Genero un nuovo bouquet...': 'Negative feedback saved. Generating a new bouquet...',\r\n    'Bouquet creato con i fiori attualmente disponibili!': 'Bouquet created with the flowers currently available!',\r\n    'Bouquet creato con fiori disponibili (modalit\u00E0 offline)': 'Bouquet created with available flowers in offline mode',\r\n    'Anteprima generata, ma non siamo riusciti a creare il link d\\'acquisto. Puoi riprovare dal carrello.': 'Preview generated, but we could not create the purchase link. You can try again from the cart.',\r\n    'Composizione eliminata con successo!': 'Composition deleted successfully!',\r\n    'Aspetta ancora un attimo: stiamo finendo di preparare il bouquet.': 'Wait one more moment: we are finishing your bouquet.',\r\n    'Impossibile attivare la notifica: mancano i dati del bouquet.': 'Unable to enable the notification: bouquet data is missing.',\r\n    'Perfetto! Ti avviseremo quando torna disponibile.': 'Perfect! We will notify you when it is available again.',\r\n    'Perfetto! Ti avviseremo appena torna disponibile.': 'Perfect! We will notify you as soon as it is available again.',\r\n    'Ops! Non sono riuscito a salvare la notifica. Riprova.': 'Oops! We could not save the notification. Try again.',\r\n    'Ops! Connessione instabile: riprova.': 'Oops! Connection unstable. Try again.',\r\n    'Ok, non ti avviseremo pi\u00F9 per questo bouquet.': 'Ok, we will not notify you about this bouquet anymore.',\r\n    'Inserisci una email valida.': 'Enter a valid email address.',\r\n    'Perfetto! Ora puoi creare il tuo bouquet.': 'Perfect! You can now create your bouquet.',\r\n    'Hai ripreso la composizione salvata.': 'You are editing an existing composition',\r\n    'Stai modificando una composizione esistente': 'You are editing an existing composition',\r\n    'Link copiato!': 'Link copied!',\r\n    'Impossibile copiare il link.': 'Unable to copy the link.',\r\n    'Per favore seleziona un file immagine valido': 'Please select a valid image file.',\r\n    'Carica prima un\\'immagine!': 'Upload an image first.',\r\n    'Carica prima un\u2019immagine!': 'Upload an image first.',\r\n    'Seleziona prima un\\'occasione!': 'Select an occasion first.',\r\n    'Seleziona prima un\u2019occasione!': 'Select an occasion first.',\r\n    'Seleziona prima un segno zodiacale!': 'Select a zodiac sign first.',\r\n    'Inserisci almeno 10 caratteri nel prompt!': 'Enter at least 10 characters in the prompt.',\r\n    'Il file \u00E8 troppo grande. Massimo 10MB.': 'The file is too large. Maximum 10MB.',\r\n    'Il file e troppo grande. Massimo 10MB.': 'The file is too large. Maximum 10MB.',\r\n    'Errore nel caricamento del file. Riprova.': 'Error uploading the file. Try again.',\r\n    'Prezzo non valido: controlla che tu abbia selezionato almeno un fiore e riprova.': 'Invalid price: check that you selected at least one flower and try again.',\r\n    'Stiamo impiegando pi\u00F9 del previsto a preparare il bouquet. Riprova tra qualche secondo: potremmo aver recuperato lo stato.': 'Preparing the bouquet is taking longer than expected. Try again in a few seconds: we may have recovered the state.',\r\n    'Stiamo impiegando piu del previsto a preparare il bouquet. Riprova tra qualche secondo: potremmo aver recuperato lo stato.': 'Preparing the bouquet is taking longer than expected. Try again in a few seconds: we may have recovered the state.',\r\n    'Errore nel salvataggio del bouquet. Per favore riprova.': 'Error saving the bouquet. Please try again.',\r\n    'Impossibile caricare i bouquet. Riprova.': 'Unable to load bouquets. Try again.',\r\n    'Tema automatico attivato': 'Automatic theme enabled',\r\n    'Modalit\u00E0 chiara attivata': 'Light mode enabled',\r\n    'Modalit\u00E0 scura attivata': 'Dark mode enabled',\r\n    'Tema cambiato': 'Theme changed',\r\n    'Ultime Novit\u00E0': 'Latest news',\r\n    'Ultime Novita': 'Latest news',\r\n    'Ispirazioni recenti': 'Recent inspirations',\r\n    'Live stock': 'Live stock',\r\n    'Come funziona': 'How it works',\r\n    'Progetti in 1 minuto. Ordini in pochi tap.': 'Design in 1 minute. Order in a few taps.',\r\n    'Crea con l\\'AI': 'Create with AI',\r\n    'Crea con l\u2019AI': 'Create with AI',\r\n    'Scegli occasione, budget e palette cromatica, e scopri le magiche proposte del nostro assistente digitale!': 'Choose occasion, budget and color palette, then discover our digital assistant\u2019s floral proposals.',\r\n    'Crea da zero': 'Create from scratch',\r\n    'Componi fiore per fiore, scegli la carta, il nastro e ogni dettaglio. Controllo totale su stile e dimensioni!': 'Build flower by flower, choose paper, ribbon and every detail. Full control over style and size.',\r\n    'Naviga tra le centinaia di creazioni esistenti, e rendila tua in un attimo grazie al tasto \"Modifica\".': 'Browse hundreds of existing creations and make one yours instantly with the \"Edit\" button.',\r\n    'Perch\u00E9 Florame.ai': 'Why Florame.ai',\r\n    'Perche Florame.ai': 'Why Florame.ai',\r\n    'Tre promesse semplici.': 'Three simple promises.',\r\n    'Tre promesse semplici. ': 'Three simple promises.',\r\n    'Quello che vedi \u00E8 quello che arriva': 'What you see is what arrives',\r\n    'Quello che vedi e quello che arriva': 'What you see is what arrives',\r\n    'L\u2019anteprima \u00E8 il riferimento dei nostri fioristi: l\u2019obiettivo \u00E8 replicarla, non \u201Cinterpretarla\u201D.': 'The preview is the reference for our florists: the goal is to replicate it, not reinterpret it.',\r\n    'L\\'anteprima e il riferimento dei nostri fioristi: l\\'obiettivo e replicarla, non \"interpretarla\".': 'The preview is the reference for our florists: the goal is to replicate it, not reinterpret it.',\r\n    'Altrove:': 'Elsewhere:',\r\n    'scegli da una foto e nel 90% dei casi ricevi qualcosa di lontanamente simile.': 'you choose from a photo and in 90% of cases receive something only vaguely similar.',\r\n    'Disponibilit\u00E0 aggiornata': 'Availability updated',\r\n    'Disponibilita aggiornata': 'Availability updated',\r\n    'Disponibilit\u00E0 aggiornata in tempo reale': 'Availability updated in real time',\r\n    'Disponibilita aggiornata in tempo reale': 'Availability updated in real time',\r\n    'Disponibilit\u00E0 e colori monitorati: meno sostituzioni dell\u2019ultimo minuto.': 'Availability and colors are monitored: fewer last-minute substitutions.',\r\n    'Disponibilita e colori monitorati: meno sostituzioni dell\\'ultimo minuto.': 'Availability and colors are monitored: fewer last-minute substitutions.',\r\n    'sostituzioni last-minute, perch\u00E8 sito e fiorista non comunicano.': 'last-minute substitutions because site and florist do not communicate.',\r\n    'sostituzioni last-minute, perch\u00E9 sito e fiorista non comunicano.': 'last-minute substitutions because site and florist do not communicate.',\r\n    'Davvero su misura': 'Truly custom',\r\n    'Crea qualcosa che sembri pensato davvero per quella persona, non \u201Cpreso al volo\u201D.': 'Create something that feels genuinely made for that person, not grabbed at random.',\r\n    'Crea qualcosa che sembri pensato davvero per quella persona, non \"preso al volo\".': 'Create something that feels genuinely made for that person, not grabbed at random.',\r\n    'catalogo fisso con foto fantoccio, nessuna personalizzazione possibile.': 'fixed catalog with placeholder photos and no real customization.',\r\n    'Copertura verificata per indirizzo': 'Coverage checked by address',\r\n    'Lo realizziamo noi. Come lo hai approvato.': 'We make it. As you approved it.',\r\n    'Fiori freschi, mano artigiana, risultato fedele. Inserisci indirizzo, data e fascia per vedere le opzioni reali.': 'Fresh flowers, handcrafted work, faithful result. Enter address, date and time window to see real options.',\r\n    'Vedi la Web App': 'View the Web App',\r\n    'Non siamo nella tua zona?': 'Not in your area?',\r\n    'Inserisci i dati per rimanere aggiornato': 'Enter your details to stay updated',\r\n    'indirizzo': 'address',\r\n    'e-mail': 'email',\r\n    'Avvisami quando arrivate': 'Notify me when you arrive',\r\n    'Niente spam!': 'No spam.',\r\n    'Ti contattiamo solo quando saremo disponibili nella tua area.': 'We will contact you only when we are available in your area.',\r\n    'Sei un fiorista?': 'Are you a florist?',\r\n    'Diventa nostro Partner!': 'Become our partner.',\r\n    'florame.ai ti permette di restare sempre al passo con i tempi e di accedere a molteplici vantaggi.': 'florame.ai helps you stay current and access multiple advantages.',\r\n\r\n    'Controllo disponibilit\u00E0...': 'Checking availability...',\r\n    'Controllo CAP non avviato': 'Postal code check not started',\r\n    'Dove vuoi spedire?': 'Where should we deliver?',\r\n    'Vuoi consegnare altrove?': 'Need delivery elsewhere?',\r\n    'Inserisci indirizzo e numero civico per vedere i fiori freschi disponibili.': 'Enter street address and house number to see fresh flowers available nearby.',\r\n    'Indirizzo (Via, n\u00B0, citt\u00E0)': 'Address (street, number, city)',\r\n    'Indirizzo (Via, n\u00B0, citta)': 'Address (street, number, city)',\r\n    'Indirizzo (Via, n\u00B0, citt\u00E0, CAP)': 'Address (street, number, city, postal code)',\r\n    'Indirizzo (Via, n\u00B0, citta, CAP)': 'Address (street, number, city, postal code)',\r\n    'Consegna a': 'Delivery to',\r\n    'Navigazione Home Florame': 'Florame Home navigation',\r\n    'Imposta indirizzo di consegna': 'Set delivery address',\r\n    'Imposta indirizzo': 'Set address',\r\n    'Aggiungi indirizzo di consegna': 'Add delivery address',\r\n    'Aggiungi indirizzo': 'Add address',\r\n    'Dove consegniamo': 'Where should we deliver',\r\n    'Verifica fiori e consegna.': 'Check flowers and delivery.',\r\n    'Indirizzo completo': 'Full address',\r\n    'Via, numero civico, citt\u00E0': 'Street, house number, city',\r\n    'Apri carrello': 'Open cart',\r\n    'Apri account': 'Open account',\r\n    'Apri': 'Open',\r\n    'Scelta bouquet e assistenza': 'Bouquet choice and support',\r\n    'Chiedi a Florame': 'Ask Florame',\r\n    'AI per scegliere, persone per aiutarti': 'AI to choose, people to help',\r\n    'Il tuo gesto, fatto bene': 'Your thoughtful gesture, done right',\r\n    'Cosa facciamo fiorire oggi?': 'What shall we make bloom today?',\r\n    'Crea qualcosa di tuo oppure scopri cosa pu\u00F2 arrivare vicino a te.': 'Create something of your own or discover what can be delivered near you.',\r\n    'Parti da qui': 'Start here',\r\n    'Come vuoi creare?': 'How would you like to create?',\r\n    'Ti guidiamo noi': 'We\u2019ll guide you',\r\n    'Scegli tutto tu': 'You choose every detail',\r\n    'Per te': 'For you',\r\n    'Disponibili': 'Available',\r\n    'Per la tua consegna': 'For your delivery',\r\n    'Imposta dove e quando': 'Set where and when',\r\n    'Dove e quando': 'Where and when',\r\n    'Tendenza': 'Trending',\r\n    'Scelti dalla community': 'Chosen by the community',\r\n    'Novit\u00E0': 'New',\r\n    'I miei': 'Mine',\r\n    'Filtra Esplora': 'Filter Explore',\r\n    'Raccolta': 'Collection',\r\n    'Chiudi filtri': 'Close filters',\r\n    'Mostro i bouquet scelti per te.': 'Showing the bouquets chosen for you.',\r\n    'Mostro i bouquet disponibili adesso.': 'Showing bouquets available now.',\r\n    'Mostro i bouquet per la tua consegna.': 'Showing bouquets for your delivery.',\r\n    'Mostro i bouquet pi\u00F9 amati.': 'Showing the most loved bouquets.',\r\n    'Mostro le novit\u00E0.': 'Showing what\u2019s new.',\r\n    'Mostro le tue creazioni.': 'Showing your creations.',\r\n    'Mostro i tuoi preferiti.': 'Showing your favorites.',\r\n    'Per vedere cosa pu\u00F2 arrivare da te.': 'To see what can be delivered to you.',\r\n    'Disponibilit\u00E0 verificata, valida fino a 72 ore.': 'Availability confirmed for up to 72 hours.',\r\n    'Disponibili adesso': 'Available now',\r\n    'Stock del fiorista': 'Florist stock',\r\n    'Tutti i bouquet disponibili': 'All available bouquets',\r\n    'Aggiorno lo stock': 'Refreshing stock',\r\n    'Pi\u00F9 amati': 'Most loved',\r\n    'Tutti i bouquet caricati': 'All bouquets loaded',\r\n    'Carico altri bouquet': 'Loading more bouquets',\r\n    'Torna all\u2019inizio della categoria': 'Back to the start of this category',\r\n    'Su': 'Top',\r\n    'Versione storefront Florame': 'Florame storefront version',\r\n    'Continua senza accettare i cookie': 'Continue without accepting cookies',\r\n    'Gestisci o annulla generazione': 'Manage or cancel generation',\r\n    'Comprimi notifica': 'Collapse notification',\r\n    'Stock aggiornato in tempo reale.': 'Stock updated in real time.',\r\n    'Cambia': 'Change',\r\n    'Gi\u00E0 presente': 'Already added',\r\n    'Gia presente': 'Already added',\r\n    'Nessun risultato. Prova a scrivere': 'No results. Try typing',\r\n    'Crea da Zero': 'Create from scratch',\r\n    'Componi tu': 'Build it yourself',\r\n    'Esplora Idee': 'Explore ideas',\r\n    'Lasciati ispirare dalla community': 'Get inspired by the community',\r\n    'Verifica in corso': 'Checking',\r\n    'Da verificare': 'To check',\r\n    'Disponibilit\u00E0': 'Availability',\r\n    'Disponibilita': 'Availability',\r\n    'Stock verificato': 'Verified stock',\r\n    'Disponibili Subito': 'Available now',\r\n    'Disponibili subito': 'Available now',\r\n    'Live Stock': 'Live stock',\r\n    'Live stock': 'Live stock',\r\n    'Esplora live stock': 'Explore live stock',\r\n    'Nessun bouquet disponibile al momento.': 'No bouquets available right now.',\r\n    'Inserisci indirizzo': 'Enter address',\r\n    'Ti mostriamo solo bouquet live stock acquistabili ora nella tua zona.': 'We only show live-stock bouquets you can buy now in your area.',\r\n    'Le tue Creazioni': 'Your creations',\r\n    'Archivio': 'Archive',\r\n    'Ancora non hai provato a creare un bouquet?!': 'You have not tried creating a bouquet yet?!',\r\n    'Qui compariranno i bouquet che metti tra i preferiti.': 'Bouquets you add to favorites will appear here.',\r\n    'Salvati': 'Saved',\r\n    'Recenti': 'Recent',\r\n    'Nessun indirizzo salvato.': 'No saved addresses.',\r\n    'Nessun indirizzo recente.': 'No recent addresses.',\r\n    'Salva indirizzo': 'Save address',\r\n    'Rinomina indirizzo': 'Rename address',\r\n    'Suggerimenti verificati mentre digiti. Premi Invio per confermare. Dati: Google': 'Verified suggestions as you type. Press Enter to confirm. Data: Google',\r\n    'Esplora senza verificare disponibilit\u00E0': 'Explore without checking availability',\r\n    'Indirizzo incompleto: scegli una via + numero civico dai suggerimenti (es. \u201CVia \u2026 12, Roma\u201D).': 'Incomplete address: choose a street and house number from the suggestions (for example \u201CVia \u2026 12, Rome\u201D).',\r\n    'Indirizzo incompleto: scegli una via + numero civico dai suggerimenti (es. \"Via ... 12, Roma\").': 'Incomplete address: choose a street and house number from the suggestions (for example \u201CVia \u2026 12, Rome\u201D).',\r\n    'Seleziona un indirizzo dai suggerimenti (via + numero civico).': 'Select an address from the suggestions (street + house number).',\r\n    'Seleziona un indirizzo dai suggerimenti (via + numero civico). Il CAP da solo non basta.': 'Select an address from the suggestions (street + house number). The postal code alone is not enough.',\r\n    'Non risulta il numero civico indicato per questa via. Controlla il numero oppure scegli un civico vicino (es. \u201CVia \u2026 12, Roma\u201D) dai suggerimenti.': 'The house number entered does not appear for this street. Check the number or choose a nearby house number from the suggestions (for example \u201CVia \u2026 12, Rome\u201D).',\r\n    'Non risulta il numero civico indicato per questa via. Controlla il numero oppure scegli un civico vicino (es. \"Via ... 12, Roma\") dai suggerimenti.': 'The house number entered does not appear for this street. Check the number or choose a nearby house number from the suggestions (for example \u201CVia \u2026 12, Rome\u201D).',\r\n    'Errore nel recupero dell\\'indirizzo. Riprova.': 'Error retrieving the address. Please try again.',\r\n    'Errore server': 'Server error',\r\n    'Errore sconosciuto': 'Unknown error',\r\n    'Errore connessione.': 'Connection error.',\r\n    'Inserisci un\u2019email valida.': 'Enter a valid email address.',\r\n    'Inserisci un\\'email valida.': 'Enter a valid email address.',\r\n    'Lascia': 'Leave',\r\n    'la tua email': 'your email',\r\n    'Ti avviseremo': 'We will notify you',\r\n    'per primo appena iniziamo a consegnare anche nella tua zona.': 'first as soon as we start delivering in your area.',\r\n    'Inserisci la tua email': 'Enter your email',\r\n    'Invia': 'Send',\r\n    'Ci aiuti a scegliere le prossime zone: \u00E8 una metrica fondamentale per la nostra espansione \u2728': 'You help us choose the next delivery areas: it is a key signal for our expansion \u2728',\r\n    'Inviando accetti la': 'By submitting, you accept the',\r\n    'Privacy Policy': 'Privacy Policy',\r\n    'Prodotto non disponibile': 'Product not available',\r\n    'Bouquet non trovato': 'Bouquet not found',\r\n    'Errore carrello': 'Cart error',\r\n    'Lingua': 'Language',\r\n    'Scarica app': 'Download app',\r\n    'Florame a portata di tap': 'Florame one tap away',\r\n    'Notifiche': 'Notifications',\r\n    'Attive': 'On',\r\n    'Spente': 'Off',\r\n    'Controllo...': 'Checking...',\r\n    'Aggiorno...': 'Updating...',\r\n    'Non supportate': 'Not supported',\r\n    'Permesso bloccato': 'Permission blocked',\r\n    'Apri da Home': 'Open from Home',\r\n    'Non disponibile': 'Unavailable',\r\n    'Profilo': 'Profile',\r\n    'Ordini e impostazioni': 'Orders and settings',\r\n    'Area cliente': 'Customer area',\r\n    'Accedi': 'Sign in',\r\n    'Aiuto': 'Help',\r\n    'Assistenza via chat': 'Chat support',\r\n    'Esci': 'Sign out',\r\n    'Logout dall\u2019account': 'Sign out of your account',\r\n    'Logout dall\\'account': 'Sign out of your account',\r\n    'App Florame': 'Florame app',\r\n    'Porta l\u2019atelier sempre con te.': 'Take the atelier with you.',\r\n    'Porta l\\'atelier sempre con te.': 'Take the atelier with you.',\r\n    'Rientri nel tuo bouquet in un tap e ricevi gli avvisi giusti al momento giusto.': 'Return to your bouquet in one tap and get the right alerts at the right time.',\r\n    'Avvisi ordine': 'Order alerts',\r\n    'Consegna live': 'Live delivery',\r\n    'Bouquet in un tap': 'Bouquet in one tap',\r\n    'Installa gratis': 'Install free',\r\n    'Scarica l\u2019app': 'Download the app',\r\n    'Scarica l\\'app': 'Download the app',\r\n    'Vuoi provare prima?': 'Want to try it first?',\r\n    'Apri Florame': 'Open Florame',\r\n    'Scarica Florame': 'Download Florame',\r\n    'Scarica app Florame': 'Download the Florame app',\r\n    'Scorri il carosello a sinistra': 'Scroll carousel left',\r\n    'Scorri il carosello a destra': 'Scroll carousel right',\r\n    'Aggiungila alla Home. Gli avvisi si attivano dalla PWA.': 'Add it to your Home Screen. Alerts are enabled from the PWA.',\r\n    'Scarica ora': 'Download now',\r\n    'Non ora': 'Not now',\r\n    'Verifica disponibilit\u00E0 richiesta': 'Availability check required',\r\n    'Per vedere le palette disponibili, dobbiamo verificare il CAP.': 'To show available palettes, we need to check the postal code.',\r\n    'Verifica disponibilit\u00E0': 'Check availability',\r\n    'Verifica CAP': 'Check postal code',\r\n    'Verifica disponibilita': 'Check availability',\r\n    'Notificami': 'Notify me',\r\n    'Ti avviseremo': 'We will notify you',\r\n    'Aggiorno\u2026': 'Updating...',\r\n    'Aggiorno...': 'Updating...',\r\n    'Inviato': 'Sent',\r\n    'Prima di continuare': 'Before you continue',\r\n    'Lascia un voto': 'Leave a rating',\r\n    'Continua Shopping': 'Continue shopping',\r\n    'Vai al Checkout': 'Go to checkout',\r\n    'INIZIAMO': \"LET'S START\",\r\n    'STEP 1 DI 4': 'STEP 1 OF 4',\r\n    'STEP 2 DI 4': 'STEP 2 OF 4',\r\n    'STEP 3 DI 4': 'STEP 3 OF 4',\r\n    'RISULTATI': 'RESULTS',\r\n    'Verifichiamo i fiori disponibili!': \"Let's check available flowers.\",\r\n    'Inserisci via e numero civico.': 'Enter street and house number.',\r\n    'Scegli un suggerimento \u00B7 Google': 'Choose a suggestion \u00B7 Google',\r\n    'Per che occasione ti serve questo bouquet?': 'What occasion is this bouquet for?',\r\n    'Qual\\'\u00E8 il tuo budget?': 'What is your budget?',\r\n    'Qual \u00E8 il tuo budget?': 'What is your budget?',\r\n    'Pensiero Dolce': 'Sweet thought',\r\n    'Un gesto leggero che dice \u201Cti penso\u201D con naturalezza.': 'A light gesture that naturally says \"thinking of you.\"',\r\n    'Un gesto leggero che dice \"ti penso\" con naturalezza.': 'A light gesture that naturally says \"thinking of you.\"',\r\n    'Il classico': 'The classic',\r\n    'Il formato che funziona sempre: equilibrio, presenza, sorriso.': 'The format that always works: balance, presence, a smile.',\r\n    'Il pi\u00F9 amato': 'Most loved',\r\n    'Il piu amato': 'Most loved',\r\n    'Scenografico': 'Statement',\r\n    'Il punto perfetto tra impatto e raffinatezza: sembra \u201Cmolto di pi\u00F9\u201D.': 'The sweet spot between impact and refinement: it looks like much more.',\r\n    'Il punto perfetto tra impatto e raffinatezza: sembra \"molto di piu\".': 'The sweet spot between impact and refinement: it looks like much more.',\r\n    'Impatto Premium': 'Premium impact',\r\n    'Pi\u00F9 volume, pi\u00F9 dettagli: quando vuoi che si noti subito.': 'More volume, more detail: when you want it to stand out immediately.',\r\n    'Piu volume, piu dettagli: quando vuoi che si noti subito.': 'More volume, more detail: when you want it to stand out immediately.',\r\n    'Firma Iconica': 'Iconic signature',\r\n    'La scelta \u201Cwow\u201D per occasioni importanti: scenografia e lusso.': 'The wow choice for important occasions: presence and luxury.',\r\n    'La scelta \"wow\" per occasioni importanti: scenografia e lusso.': 'The wow choice for important occasions: presence and luxury.',\r\n    'Celebrazioni Iconiche': 'Iconic celebrations',\r\n    'Compleanni, traguardi e festa assicurata.': 'Birthdays, milestones and guaranteed celebration.',\r\n    'Romantico & Cuore': 'Romance & heart',\r\n    'Promesse, anniversari e dichiarazioni.': 'Promises, anniversaries and declarations.',\r\n    'Affetto & Famiglia': 'Affection & family',\r\n    'Nuovi inizi e gesti premurosi.': 'New beginnings and thoughtful gestures.',\r\n    'Supporto & Empatia': 'Support & empathy',\r\n    'Vicini nei momenti importanti.': 'Close in important moments.',\r\n    'Eventi & Signature': 'Events & signature',\r\n    'Scenografie d\u2019impatto e bouquet statement.': 'Impactful arrangements and statement bouquets.',\r\n    'Scenografie d\\'impatto e bouquet statement.': 'Impactful arrangements and statement bouquets.',\r\n    'Primo appuntamento': 'First date',\r\n    'Bouquet delicato e raffinato per conquistare con stile.': 'A delicate, refined bouquet to win them over with style.',\r\n    'Romantiche Duo': 'Romantic duos',\r\n    'Combinazioni a due tonalit\u00E0, morbide ma carattere.': 'Two-tone combinations, soft but full of character.',\r\n    'Romantiche Trio': 'Romantic trios',\r\n    'Sfumature equilibrate per bouquet armonici.': 'Balanced shades for harmonious bouquets.',\r\n    'Vitaminiche': 'Vibrant palettes',\r\n    'Palette brillanti e scenografiche.': 'Bright, striking palettes.',\r\n    'Incanto Viola': 'Purple enchantment',\r\n    'Sfumature mistiche e armonie pastello.': 'Mystical shades and pastel harmonies.',\r\n    'Profondit\u00E0 & Cielo': 'Depth & sky',\r\n    'L\u2019eleganza rara del blu e dei suoi contrasti.': 'The rare elegance of blue and its contrasts.',\r\n    'L\\'eleganza rara del blu e dei suoi contrasti.': 'The rare elegance of blue and its contrasts.',\r\n    'Green Signature': 'Green signature',\r\n    'Accenti botanici e contrasti moderni.': 'Botanical accents and modern contrasts.',\r\n    'Duo Armonici': 'Harmonious duos',\r\n    'Combinazioni perfette a 2 colori.': 'Perfect two-color combinations.',\r\n    'Trio Dinamici': 'Dynamic trios',\r\n    'Sfumature equilibrate a 3 colori.': 'Balanced three-color shades.',\r\n    'Multicolor (4+)': 'Multicolor (4+)',\r\n    'Composizioni ricche ed esplosive.': 'Rich, expressive arrangements.',\r\n    'Scegli la combinazione di colori perfetta per la tua composizione': 'Choose the perfect color combination for your arrangement',\r\n    'Filtra per colore': 'Filter by color',\r\n    'Cerco le combinazioni perfette, tra le disponibilit\u00E0 nella tua zona...': 'Finding the perfect combinations among what is available in your area...',\r\n    'Cerco le combinazioni perfette, tra le disponibilita nella tua zona...': 'Finding the perfect combinations among what is available in your area...',\r\n    'Le nostre 2 proposte uniche affini alle tue esigenze': 'Our 2 unique proposals tailored to your needs',\r\n    'La Galleria della Community': 'Community Gallery',\r\n    'ISPIRAZIONE': 'INSPIRATION',\r\n    'Scopri le creazioni uniche realizzate dagli altri utenti. Lasciati ispirare o acquista subito il look perfetto.': 'Discover unique creations made by other users. Get inspired or buy the perfect look right away.',\r\n    'Ogni bouquet nella sezione Esplora \u00E8 stato creato da un altro utente, come te': 'Every bouquet in Explore was created by another user, just like you',\r\n    'Alcune delle creazioni pi\u00F9 belle nascono da combinazioni casuali': 'Some of the most beautiful creations come from unexpected combinations',\r\n    'Lasciarti ispirare dagli altri ti apre a colori e combinazioni inaspettate': 'Letting others inspire you opens you up to unexpected colors and combinations',\r\n    'florame.ai \u00E8 il progetto indipendente di Matteo e Leonardo: non farti problemi a scriverci, aiutaci a migliorare! \uD83D\uDC9A': 'Florame is Matteo and Leonardo\u2019s independent project: feel free to write to us and help us improve. \uD83D\uDC9A',\r\n    'Se qualcosa non ti convince, aiutaci a migliorare: ogni parere conta \uD83D\uDC9A': 'If something does not feel right, help us improve: every opinion matters. \uD83D\uDC9A',\r\n    'Filtra & Ordina': 'Filter & Sort',\r\n    'Filtra&Ordina': 'Filter & Sort',\r\n    'Filtra e Ordina': 'Filter & Sort',\r\n    'Filtri': 'Filters',\r\n    'Reimposta': 'Reset',\r\n    'Visualizza': 'View',\r\n    'Tutti': 'All',\r\n    'In Tendenza': 'Trending',\r\n    'Disponibili ora': 'Available now',\r\n    'Periodo': 'Period',\r\n    'Dall\\'inizio': 'All time',\r\n    'Dall\u2019inizio': 'All time',\r\n    'Ultima settimana': 'Last week',\r\n    'Ultimo mese': 'Last month',\r\n    'Ultimo anno': 'Last year',\r\n    'Oggi': 'Today',\r\n    'Mostra risultati': 'Show results',\r\n    'Vuoi vedere solo ci\u00F2 che puoi ricevere?': 'Do you want to see only what you can receive?',\r\n    'Vuoi vedere solo cio che puoi ricevere?': 'Do you want to see only what you can receive?',\r\n    'Verifica il CAP per filtrare i bouquet disponibili nella tua zona.': 'Check your postal code to filter bouquets available in your area.',\r\n    'No, mostra tutto': 'No, show everything',\r\n    'Caricamento galleria...': 'Loading gallery...',\r\n    'In questa zona non consegniamo ancora: qui vedi solo idee della community (non acquistabili).': 'We do not deliver to this area yet: here you only see community ideas, not purchasable items.',\r\n\r\n    'Quando consegniamo?': 'When should we deliver?',\r\n    'Seleziona data e fascia oraria': 'Select date and time slot',\r\n    'Ritiro in negozio': 'Store pickup',\r\n    'Ritiro gratuito': 'Free pickup',\r\n    'Punto ritiro': 'Pickup point',\r\n    'Nessun costo di consegna': 'No delivery fee',\r\n    'Ritiro nella fascia scelta': 'Pickup in the selected time slot',\r\n    'Indicazioni': 'Directions',\r\n    'Chiama': 'Call',\r\n    'Potrai venire a ritirare nel giorno e orario scelto, presso il negozio!': 'You can pick up on the selected day and time at the store.',\r\n    'Ti aspettiamo in negozio nel giorno e nella fascia selezionata. Nessun costo di consegna verr\u00E0 aggiunto al carrello.': 'We will see you in store on the selected day and time slot. No delivery fee will be added to the cart.',\r\n    'Se serve coordinare il ritiro, il negozio potr\u00E0 contattarti al telefono indicato.': 'If pickup needs coordination, the store may contact you at the phone number provided.',\r\n    'Conferma chi passa in atelier': 'Confirm who will pick it up in store',\r\n    'Dove spediamo?': 'Where should we ship?',\r\n    'Inserisci l\\'indirizzo di consegna': 'Enter the delivery address',\r\n    'Il tuo pensiero': 'Your message',\r\n    'Scrivi un biglietto (opzionale)': 'Write a card message (optional)',\r\n    'Riepilogo': 'Summary',\r\n    'Controlla che sia tutto perfetto': 'Check that everything is right',\r\n    'Vai al Riepilogo': 'Go to summary',\r\n    'Continua': 'Continue',\r\n    'Indietro': 'Back',\r\n    'Elaborazione...': 'Processing...',\r\n    'Confermato!': 'Confirmed.',\r\n    'Dettagli ritiro': 'Pickup details',\r\n    'Dettagli spedizione': 'Delivery details',\r\n    'Ritiro programmato': 'Pickup scheduled',\r\n    'Consegna programmata': 'Delivery scheduled',\r\n    'Ritiro confermato!': 'Pickup confirmed.',\r\n    'Consegna Pianificata!': 'Delivery scheduled.',\r\n    '\u2705 Ritiro confermato!': '\u2705 Pickup confirmed.',\r\n    '\u2705 Consegna Pianificata!': '\u2705 Delivery scheduled.',\r\n    'CAP non valido: seleziona un indirizzo pi\u00F9 specifico (con civico).': 'Invalid postal code: select a more specific address with a street number.',\r\n    'Modifica Indirizzo': 'Edit address',\r\n    'Modifica indirizzo': 'Edit address',\r\n    'Destinatario': 'Recipient',\r\n    'Telefono': 'Phone',\r\n    'Negozio': 'Store',\r\n    'Citofono': 'Doorbell',\r\n    'Biglietto incluso': 'Card included',\r\n    'Modifica biglietto': 'Edit card',\r\n    '+ Aggiungi un biglietto regalo': '+ Add a gift card message',\r\n    'Seleziona una data dal calendario': 'Select a date from the calendar',\r\n    'Scegli un orario': 'Choose a time',\r\n    'Per favore, cerca e seleziona un indirizzo valido dal menu (con civico).': 'Please search and select a valid address from the menu (with house number).',\r\n    'Seleziona data e fascia oraria.': 'Select date and time slot.',\r\n    'Completa Nome, Cognome e Telefono.': 'Complete first name, last name and phone.',\r\n    'Seleziona un indirizzo valido (con civico) dal menu.': 'Select a valid address (with house number) from the menu.',\r\n    'Il partner non ha ancora un indirizzo negozio valido per il ritiro.': 'This partner does not yet have a valid store pickup address.',\r\n    'Impossibile verificare il civico: Google non ha restituito i dettagli. Riprova selezionando un risultato diverso.': 'Unable to verify the street number: Google did not return the details. Try selecting a different result.',\r\n    'Numero civico non trovato / non verificabile: hai un numero nell\u2019indirizzo, ma Google non lo conferma. Seleziona un altro risultato oppure un civico diverso.': 'Street number not found or not verifiable: there is a number in the address, but Google does not confirm it. Select another result or a different street number.',\r\n    'Manca il numero civico: seleziona un indirizzo completo (es. Via Roma 10).': 'Street number missing: select a complete address (e.g. Via Roma 10).',\r\n    'Ritiro in negozio presso': 'Store pickup at',\r\n    'Consegna a domicilio': 'Home delivery',\r\n    'Note ritiro:': 'Pickup notes:',\r\n    'Note corriere:': 'Courier notes:',\r\n    'Ci dispiace: la zona selezionata non \u00E8 servita dal servizio.': 'Sorry, the selected area is not covered by the service.',\r\n    'Ci dispiace: la zona selezionata non e servita dal servizio.': 'Sorry, the selected area is not covered by the service.',\r\n    'Florame \u00E8 in espansione \uD83D\uDE80. Segnalaci questa zona e ti avvisiamo appena consegniamo l\u00EC.': 'Florame is expanding \uD83D\uDE80. Tell us about this area and we will notify you as soon as we deliver there.',\r\n    'Florame e in espansione \uD83D\uDE80. Segnalaci questa zona e ti avvisiamo appena consegniamo li.': 'Florame is expanding \uD83D\uDE80. Tell us about this area and we will notify you as soon as we deliver there.',\r\n    'Ricevi notifica quando arriviamo': 'Get notified when we arrive',\r\n    'Nessuno': 'None',\r\n    'Perfetto! Ritiro salvato nel carrello. Procedi al pagamento.': 'Perfect. Pickup details saved in the cart. Continue to payment.',\r\n    'Perfetto! Dati salvati nel carrello. Procedi al pagamento.': 'Perfect. Delivery details saved in the cart. Continue to payment.',\r\n    'Errore di connessione. Riprova.': 'Connection error. Please try again.',\r\n    'Errore salvataggio dati prima del checkout. Riprova.': 'Error saving details before checkout. Try again.',\r\n    'Seleziona prima una data': 'Select a date first',\r\n    'Fascia oraria non disponibile': 'Time slot unavailable',\r\n    'Data': 'Date',\r\n    'Ora': 'Time',\r\n    'Mattina': 'Morning',\r\n    'Pomeriggio': 'Afternoon',\r\n    'Sera': 'Evening',\r\n    'Festa della Mamma': \"Mother's Day\",\r\n    'Festa della mamma': \"Mother's Day\",\r\n    'Dal 1 al 10 maggio': 'May 1-10',\r\n    'Ordina entro 23:59 del giorno precedente': 'Order by 11:59 PM the previous day',\r\n    'Ordina entro le 12:00': 'Order by 12:00 PM',\r\n    'Ordina entro le 14:00': 'Order by 2:00 PM',\r\n    'Ordina entro le 19:00': 'Order by 7:00 PM',\r\n    'Nome': 'First name',\r\n    'Cognome': 'Last name',\r\n    'Note per il ritiro': 'Pickup notes',\r\n    'Note per il corriere': 'Courier notes',\r\n    'Completa i dettagli del ritiro': 'Complete pickup details',\r\n    'Completa la pianificazione consegna': 'Complete delivery scheduling',\r\n    'Pianifica la Consegna': 'Schedule delivery',\r\n    'Pianifica la consegna': 'Schedule delivery',\r\n    'Compila per sbloccare il Checkout': 'Complete this to unlock checkout',\r\n    'Completa la consegna prima': 'Complete delivery first',\r\n    'Configurazione': 'Setup',\r\n    'Iniziamo': \"Let's start\",\r\n    'Consegna in giornata:': 'Same-day delivery:',\r\n    'Consegna in giornata': 'Same-day delivery',\r\n    'Fascia': 'Slot',\r\n    ': Ordina entro': ': order by',\r\n    ': Ordina entro le': ': order by',\r\n    'Ordina entro le': 'Order by',\r\n    'del giorno prima': 'the day before',\r\n    'entro 23:59 del giorno precedente': 'order by 11:59 PM the previous day',\r\n    'entro le 12:00': 'order by 12:00 PM',\r\n    'entro le 14:00': 'order by 2:00 PM',\r\n    'Morning: entro 23:59 del giorno precedente': 'Morning: order by 11:59 PM the previous day',\r\n    'Afternoon: entro le 12:00': 'Afternoon: order by 12:00 PM',\r\n    'Evening: entro le 14:00': 'Evening: order by 2:00 PM',\r\n    '\u2600\uFE0F Morning: entro 23:59 del giorno precedente': '\u2600\uFE0F Morning: order by 11:59 PM the previous day',\r\n    '\uD83C\uDF19 Afternoon: entro le 12:00': '\uD83C\uDF19 Afternoon: order by 12:00 PM',\r\n    '\u2728 Evening: entro le 14:00': '\u2728 Evening: order by 2:00 PM',\r\n    'Solo per oggi': 'Today only',\r\n    'SERA: fino alle 19:00!': 'EVENING: until 7:00 PM!',\r\n    'Seleziona una data': 'Select a date',\r\n    'Orario disponibile': 'Available time',\r\n    'Scegli la fascia oraria preferita': 'Choose your preferred time slot',\r\n    'La disponibilit\u00E0 cambia per luogo e momento.': 'Availability changes by place and time.',\r\n    'Scopri come funziona': 'See how it works',\r\n    'Nome *': 'First name *',\r\n    'Cognome *': 'Last name *',\r\n    'Telefono *': 'Phone *',\r\n    'Partner storefront': 'Storefront partner',\r\n    'Verifica disponibilit\u00E0...': 'Checking availability...',\r\n    'Verifica disponibilita...': 'Checking availability...',\r\n    'Consegna a:': 'Deliver to:',\r\n    'Dove consegniamo?': 'Where should we deliver?',\r\n    'Scrivi via e civico per verificare la copertura.': 'Enter street and house number to check coverage.',\r\n    'Es: Via del Corso 12, Roma': 'E.g. Via del Corso 12, Rome',\r\n    'Nome sul citofono': 'Name on the doorbell',\r\n    'Scala, piano, interno, istruzioni...': 'Staircase, floor, apartment, instructions...',\r\n    'Indicazioni utili per il ritiro, nome persona che passa, fascia preferita...': 'Useful pickup notes, pickup person, preferred time slot...',\r\n    'Scrivi qui il tuo messaggio...\\nEs: Buon compleanno amore mio! Spero che questi fiori ti portino un sorriso.': 'Write your message here...\\nExample: Happy birthday my love! I hope these flowers bring you a smile.',\r\n    'Compleanno': 'Birthday',\r\n    'Amore': 'Love',\r\n    'Occasione': 'Occasion',\r\n    'Tutte': 'All',\r\n    'Traguardi': 'Milestones',\r\n    'Mamma': 'Mother',\r\n    'Grazie': 'Thank you',\r\n    'Nuovi inizi': 'New beginnings',\r\n    'Vicinanza': 'Support',\r\n    'Eventi': 'Events',\r\n    'Auguri': 'Congratulations',\r\n    'Salta questo passaggio (Nessun biglietto)': 'Skip this step (no card)',\r\n    'Conferma Dati': 'Confirm details',\r\n    'Riprova Conferma': 'Try confirming again',\r\n    'Completa la Consegna': 'Complete delivery',\r\n    'Per garantire': 'To ensure',\r\n    'perfezione anche nella fase di spedizione': 'delivery works perfectly too',\r\n    ', ti chiediamo di inserire tutte le informazioni necessarie nel riquadro qui sopra prima di procedere.': ', please enter all the required details above before continuing.',\r\n    'Per garantire perfezione anche nella fase di spedizione, ti chiediamo di inserire tutte le informazioni necessarie nel riquadro qui sopra prima di procedere.': 'To make delivery work smoothly too, please enter all the required details above before continuing.',\r\n    'Ho capito, completo ora': 'Got it, I will complete it now',\r\n    'Ritiro in negozio gratuito': 'Free in-store pickup',\r\n    'Nessun costo di consegna viene aggiunto al carrello.': 'No delivery fee is added to your cart.',\r\n    'Spedizione gratuita ottenuta': 'Free shipping unlocked',\r\n    'La consegna la regaliamo noi.': 'Delivery is on us.',\r\n    'Attenzione': 'Attention',\r\n    'Ci sono dei campi incompleti. Controlla i dati inseriti.': 'Some fields are incomplete. Please check the details entered.',\r\n    'Ho capito, correggo': 'Got it, I will fix it',\r\n\r\n    'Carrello': 'Cart',\r\n    'Aggiungi al carrello': 'Add to cart',\r\n    'Bouquet aggiunto al carrello!': 'Bouquet added to cart!',\r\n    'Visualizza carrello': 'View cart',\r\n    'Visualizza prodotto': 'View product',\r\n    'Prodotto non disponibile': 'Product unavailable',\r\n    'Errore carrello': 'Cart error',\r\n    'Procedi al pagamento': 'Continue to payment',\r\n    'Checkout': 'Checkout',\r\n    'Totale': 'Total',\r\n    'Subtotale': 'Subtotal',\r\n    'Quantit\u00E0': 'Quantity',\r\n    'Prezzo': 'Price',\r\n    'Prezzo totale': 'Total price',\r\n    'Prezzo di listino': 'Regular price',\r\n    'Prezzo scontato': 'Sale price',\r\n    'Prezzo unitario': 'Unit price',\r\n    'Da': 'From',\r\n    'Prodotto': 'Product',\r\n    'Descrizione': 'Description',\r\n    'Fornitore': 'Vendor',\r\n    'In offerta': 'On sale',\r\n    'Rimuovi': 'Remove',\r\n    'Aggiorna': 'Update',\r\n    'Acquista ora': 'Buy now',\r\n    'Compra ora': 'Buy now',\r\n    'Scegli opzioni': 'Choose options',\r\n    'Aggiungi all\\'ordine': 'Add to order',\r\n    'Aggiungi all\u2019ordine': 'Add to order',\r\n    'Imposte incluse.': 'Taxes included.',\r\n    'Imposte incluse': 'Taxes included',\r\n    'Spese di spedizione calcolate al check-out.': 'Shipping calculated at checkout.',\r\n    'Spese di spedizione calcolate al checkout.': 'Shipping calculated at checkout.',\r\n    'Spedizione calcolata al checkout': 'Shipping calculated at checkout',\r\n    'Spedizione': 'Shipping',\r\n    'Ritiro disponibile': 'Pickup available',\r\n    'Ritiro attualmente non disponibile': 'Pickup currently unavailable',\r\n    'Visualizza i dettagli del negozio': 'View store details',\r\n    'Verifica la disponibilit\u00E0 in altri negozi': 'Check availability at other stores',\r\n    'Impossibile caricare la disponibilit\u00E0 di ritiro': 'Unable to load pickup availability',\r\n    'Esaurito': 'Sold out',\r\n    'Disponibile': 'Available',\r\n    'Non disponibile': 'Not available',\r\n    'Cerca': 'Search',\r\n    'Cerca prodotti...': 'Search products...',\r\n    'Cerca fiori o colori...': 'Search flowers or colors...',\r\n    'Accedi': 'Log in',\r\n    'Area cliente': 'Customer area',\r\n    'Entra nel tuo account': 'Access your account',\r\n    'Account': 'Account',\r\n    'Gestisci account': 'Manage account',\r\n    'Lingua': 'Language',\r\n    'Italiano': 'Italian',\r\n    'Ispirazione': 'Inspiration',\r\n    'Ispira': 'Inspire',\r\n    'Trova ispirazione': 'Find inspiration',\r\n    'Le tue composizioni': 'Your compositions',\r\n    'Le tue composizioni salvate': 'Your saved compositions',\r\n    'Nessun fiore selezionato': 'No flowers selected',\r\n    'Ciao': 'Hello',\r\n    'Benvenuto nella tua area personale.': 'Welcome to your personal area.',\r\n    'Torna alla Home': 'Back to home',\r\n    'Pagina 404': '404 page',\r\n    'Questo bouquet si \u00E8 perso.': 'This bouquet wandered off.',\r\n    'Questo bouquet si e perso.': 'This bouquet wandered off.',\r\n    'Niente panico: il nostro piccolo assistente floreale sta raccogliendo petali per riportarti sulla strada giusta.': 'No panic: our little floral assistant is collecting petals to guide you back to the right path.',\r\n    'Torna alla home': 'Back to home',\r\n    'Torna alla home Florame': 'Back to the Florame home',\r\n    'Gioca coi petali': 'Play with petals',\r\n    'Petali': 'Petals',\r\n    'Tocca il pet o cattura i petali': 'Tap the pet or catch petals',\r\n    'Mini gioco Florame': 'Florame mini game',\r\n    'Mi aiuti a ritrovare il bouquet?': 'Can you help me find the bouquet?',\r\n    'Prendi 7 petali e sblocco il sentiero.': 'Catch 7 petals and I will unlock the path.',\r\n    'Bel colpo. Ancora qualche petalo.': 'Nice catch. A few petals to go.',\r\n    'Sentiero ritrovato. Ora si torna ai fiori.': 'Path found. Back to flowers.',\r\n    'Sono pronto. Tocca i petali mentre cadono.': 'Ready. Tap the petals as they fall.',\r\n    'Pet floreale interattivo': 'Interactive floral pet',\r\n    'Pet floreale Florame': 'Florame floral pet',\r\n    'Petalo': 'Petal',\r\n    'Gestisci i tuoi dati personali e l\\'indirizzo predefinito.': 'Manage your personal details and default address.',\r\n    'Gestisci i tuoi dati personali e l\u2019indirizzo predefinito.': 'Manage your personal details and default address.',\r\n    'Cliente': 'Customer',\r\n    'Indirizzo': 'Address',\r\n    'Nessun indirizzo impostato': 'No address set',\r\n    'Gestisci Indirizzi': 'Manage addresses',\r\n    'Gestisci e traccia i tuoi acquisti': 'Manage and track your purchases',\r\n    'Stato:': 'Status:',\r\n    'CONSEGNATO': 'DELIVERED',\r\n    'IN CONSEGNA': 'OUT FOR DELIVERY',\r\n    'NON EVASO': 'UNFULFILLED',\r\n    'Mostra ordini precedenti': 'Show previous orders',\r\n    'Riepilogo Indirizzi': 'Address summary',\r\n    'Indirizzi': 'Addresses',\r\n    'Nota cliente:': 'Customer note:',\r\n    'Ordine Annullato il': 'Order canceled on',\r\n    'Ordine Annullato il:': 'Order canceled on:',\r\n    'Motivo:': 'Reason:',\r\n    'Data:': 'Date:',\r\n    'Orario:': 'Time:',\r\n    'Destinatario:': 'Recipient:',\r\n    'Telefono:': 'Phone:',\r\n    'Citofono:': 'Doorbell:',\r\n    'Note:': 'Notes:',\r\n    'Messaggio biglietto:': 'Card message:',\r\n    'Tot. pagato': 'Total paid',\r\n    'Ordini': 'Orders',\r\n    'Impostazioni': 'Settings',\r\n    'Preferiti': 'Favorites',\r\n    'Salva': 'Save',\r\n    'Annulla': 'Cancel',\r\n    'Chiudi': 'Close',\r\n    'Chiudi dettagli': 'Close details',\r\n    'Chiudi promemoria': 'Dismiss reminder',\r\n    'Modifica': 'Edit',\r\n    'Elimina': 'Delete',\r\n    'Condividi': 'Share',\r\n    'Assistente': 'Assistant',\r\n    'Esplora': 'Explore',\r\n    'Aggiungi': 'Add',\r\n    'Aggiungi fiori al tuo bouquet': 'Add flowers to your bouquet',\r\n    'Add fiori al tuo bouquet': 'Add flowers to your bouquet',\r\n    'Selezione non valida: nessun fiore riconosciuto. Cambia variante e riprova.': 'Invalid selection: no flowers recognized. Change variant and try again.',\r\n    'Proposta caricata nell\u2019editor!': 'Proposal loaded in the editor.',\r\n    'Proposta caricata nell\\'editor!': 'Proposal loaded in the editor.',\r\n    'Anteprima': 'Preview',\r\n    'Dettagli': 'Details',\r\n    'Vai al prodotto': 'Go to product',\r\n    'Scegli manualmente': 'Choose manually',\r\n    'Apri su Google Maps': 'Open in Google Maps',\r\n    '+ Aggiungi un nuovo indirizzo': '+ Add a new address',\r\n    'Annulla l\\'aggiunta': 'Cancel adding',\r\n    'Indirizzo di Spedizione': 'Shipping address',\r\n    'Gestisci i tuoi luoghi di spedizione': 'Manage your shipping locations',\r\n    'Opzionale': 'Optional',\r\n    '(Opzionale)': '(Optional)',\r\n    'Dettagli di spedizione salvati': 'Saved shipping details',\r\n    'Intestatario': 'Recipient',\r\n    'Es. Mario': 'E.g. Mario',\r\n    'Es. Rossi': 'E.g. Rossi',\r\n    'Es. Azienda SRL': 'E.g. Company Ltd',\r\n    'Es. Via Roma, 10': 'E.g. 10 Roma Street',\r\n    'Es. Scala B, Int. 4': 'E.g. Staircase B, Apt. 4',\r\n    'Es. Milano': 'E.g. Milan',\r\n    'Es. 20100': 'E.g. 20100',\r\n    'Es. +39 333 1234567': 'E.g. +39 333 1234567',\r\n    'Dettagli di spedizione e pagamento': 'Shipping and payment details',\r\n    'Dettagli Articoli': 'Item details',\r\n    'Dettagli consegna': 'Delivery details',\r\n    'Dettagli consegna:': 'Delivery details:',\r\n    'Vedi Ordine': 'View order',\r\n    'Inizia lo Shopping': 'Start shopping',\r\n    'oppure': 'or',\r\n    'Hai gi\u00E0 un account?': 'Already have an account?',\r\n    'Hai gia un account?': 'Already have an account?',\r\n    'Accedi qui': 'Log in here',\r\n    'Il tuo nome': 'Your first name',\r\n    'Il tuo cognome': 'Your last name',\r\n    'Scegli una password sicura': 'Choose a secure password',\r\n\r\n    'Genera': 'Generate',\r\n    'Generazione in corso...': 'Generating...',\r\n    'Generazione casuale': 'Random generation',\r\n    'Analisi disponibilit\u00E0 in corso...': 'Checking availability...',\r\n    'Stiamo contando i fiori freschi nel tuo quartiere.': 'We are counting fresh flowers in your area.',\r\n    'Controlla il CAP per sbloccare fiori e palette disponibili nella tua zona.': 'Check your postal code to unlock flowers and palettes available in your area.',\r\n    'Vale per tutti i percorsi (Crea e Funnel).': 'Applies to every flow (Create and Funnel).',\r\n    'Sto aggiornando il catalogo...': 'Updating the catalog...',\r\n    'Sto caricando le palette basate sulla tua zona\u2026': 'Loading palettes based on your area...',\r\n    'Sto caricando le palette basate sulla tua zona...': 'Loading palettes based on your area...',\r\n    'Anteprima AI immediata': 'Instant AI preview',\r\n    'Stiamo creando la tua anteprima...': 'Crafting your preview...',\r\n    'Se scegli colori molto simili o completamente opposti, l\u2019immagine sar\u00E0 pi\u00F9 armoniosa (o sorprendente)! Esempio: rose rosse, carta naturale o tessuto rosso': 'If you choose very similar or completely opposite colors, the image will be more harmonious or more surprising. Example: red roses, natural paper or red fabric',\r\n    'Ogni fiore \u00E8 selezionato da un fiorista reale, non da un algoritmo di magazzino': 'Every flower is selected by a real florist, not by a warehouse algorithm',\r\n    'Il tuo ordine \u00E8 preparato su misura e confezionato a mano': 'Your order is made to measure and wrapped by hand',\r\n    'La nostra confezione \u00E8 pensata per proteggere i fiori e stupire chi la riceve': 'Our packaging is designed to protect the flowers and delight the recipient',\r\n    'Non usiamo plastica monouso: solo carta e materiali compostabili': 'We do not use single-use plastic: only paper and compostable materials',\r\n    'Hai selezionato uno dei bouquet pi\u00F9 amati dalla nostra community!': 'You selected one of the bouquets most loved by our community.',\r\n    'Il tuo bouquet sar\u00E0 assemblato solo dopo il tuo ordine: 0 sprechi': 'Your bouquet is assembled only after your order: zero waste',\r\n    'Ogni acquisto sostiene fioristi indipendenti e creativit\u00E0 sostenibile': 'Every purchase supports independent florists and sustainable creativity',\r\n    'Aggiungiamo un bigliettino su richiesta, gratis!': 'We add a card message on request, free of charge.',\r\n    'Crea': 'Create',\r\n    'Bouquet Community': 'Bouquet community',\r\n    'Rose': 'Roses',\r\n    'Tulipani': 'Tulips',\r\n    'Girasoli': 'Sunflowers',\r\n    'Gigli': 'Lilies',\r\n    'Vedi tutti i bouquet pronti': 'View all ready bouquets',\r\n    'I miei bouquet': 'My bouquets',\r\n    'Bouquet Generati dalla Community': 'Community generated bouquets',\r\n    'Mostra solo i miei bouquet': 'Show only my bouquets',\r\n    'Caricamento bouquet...': 'Loading bouquets...',\r\n    'Creato da me': 'Created by me',\r\n    'Nessun bouquet generato': 'No generated bouquets',\r\n    'Proposte in creazione': 'Creating proposals',\r\n    'Le proposte sono in creazione': 'Creating proposals',\r\n    'Stiamo componendo le tue due proposte': 'We are composing your two proposals',\r\n    'Due proposte, stesso gusto di partenza, due interpretazioni floreali diverse.': 'Two proposals, the same starting taste, two different floral interpretations.',\r\n    'Analisi iniziale': 'Initial analysis',\r\n    'Stiamo interpretando il tuo gusto cromatico.': 'We are interpreting your color taste.',\r\n    'Lettura della palette': 'Reading the palette',\r\n    'Selezione dei fiori': 'Selecting flowers',\r\n    'Abbiniamo variet\u00E0 e tonalit\u00E0 disponibili.': 'We are matching available varieties and shades.',\r\n    'Composizione delle proposte': 'Composing proposals',\r\n    'Bilanciamo struttura, volume e stile.': 'We are balancing structure, volume and style.',\r\n    'Rifinitura finale': 'Final refinement',\r\n    'Ultimi ritocchi prima di mostrarti le due proposte.': 'Final touches before showing you the two proposals.',\r\n    'Proposte pronte': 'Proposals ready',\r\n    'Ci siamo, stiamo aprendo i risultati.': 'Almost there, opening the results.',\r\n    'Oops, qualcosa \u00E8 andato storto!': 'Oops, something went wrong.',\r\n    'Oops, qualcosa e andato storto!': 'Oops, something went wrong.',\r\n    'L\\'intelligenza artificiale non \u00E8 riuscita a generare le proposte in questo momento.': 'The AI could not generate the proposals right now.',\r\n    'L\\'intelligenza artificiale non e riuscita a generare le proposte in questo momento.': 'The AI could not generate the proposals right now.',\r\n    'Cerco le creazioni degli altri utenti\u2026': 'Looking for creations by other users...',\r\n    'Stai per vedere magie floreali create dalla community\u2026': 'You are about to see floral magic created by the community...',\r\n    'Pi\u00F9 dettagli fornisci, pi\u00F9 l\u2019AI riesce a creare un bouquet su misura per te': 'The more details you provide, the better AI can tailor the bouquet for you',\r\n    'Ogni immagine \u00E8 unica: AI visiva e testuale lavorano insieme per il tuo bouquet': 'Every image is unique: visual and text AI work together for your bouquet',\r\n    'Devi prima generare un\\'anteprima del bouquet!': 'You need to generate a bouquet preview first!',\r\n    'Seleziona almeno un fiore prima di aggiungere al carrello!': 'Select at least one flower before adding to cart!',\r\n    'Si \u00E8 verificato un errore durante la generazione del bouquet. Riprova pi\u00F9 tardi.': 'An error occurred while generating the bouquet. Please try again later.',\r\n    'Si \u00E8 verificato un errore durante l\\'aggiunta al carrello. Riprova pi\u00F9 tardi.': 'An error occurred while adding to cart. Please try again later.',\r\n    'Non puoi combinare questi fiori perch\u00E9 hanno lunghezze molto diverse.': 'You cannot combine these flowers because their stem lengths are very different.',\r\n    'Composizione salvata!': 'Composition saved!',\r\n    'La tua composizione \u00E8 stata salvata con successo.': 'Your composition was saved successfully.',\r\n    'Stiamo creando il tuo bouquet magico...': 'We are creating your magic bouquet...',\r\n    'Stiamo creando il tuo bouquet': 'We are creating your bouquet',\r\n    'Bouquet personalizzato': 'Custom bouquet',\r\n    'Bouquet personalizzato con': 'Custom bouquet with',\r\n    'Un bouquet creato su misura con': 'A custom bouquet with',\r\n    'Creato su misura per te': 'Custom-made for you',\r\n    'Creato per': 'Created for',\r\n    'Nessun fiore disponibile al momento': 'No flowers available right now',\r\n    'Nessun fiore disponibile nella selezione generata': 'No flowers available in the generated selection',\r\n    'Mi piacciono': 'I like',\r\n    '\u2764\uFE0F Mi piacciono': '\u2764\uFE0F I like',\r\n    'Generazione in corso': 'Generation in progress',\r\n    'Render immagine': 'Image render',\r\n    'Testi marketing': 'Marketing text',\r\n    'Preparazione acquisto': 'Purchase setup',\r\n    'Bouquet pronto': 'Bouquet ready',\r\n    'Bouquet creato con fiori di stagione disponibili': 'Bouquet created with available seasonal flowers',\r\n    '\u2728 Bouquet creato con i fiori attualmente disponibili!': '\u2728 Bouquet created with currently available flowers.',\r\n    '\u26A0\uFE0F Bouquet creato con fiori disponibili (modalit\u00E0 offline)': '\u26A0\uFE0F Bouquet created with available flowers (offline mode).',\r\n    'Carica prima un\u2019immagine!': 'Upload an image first.',\r\n    'Carica prima un\\'immagine!': 'Upload an image first.',\r\n    'Aspetta ancora un attimo: stiamo finendo di preparare il bouquet.': 'Wait one more moment: we are finishing the bouquet setup.',\r\n    'Anteprima generata \u2705 ma non siamo riusciti a creare il link d\u2019acquisto. Puoi riprovare dal carrello.': 'Preview generated \u2705 but we could not create the purchase link. You can try again from the cart.',\r\n    'Anteprima generata \u2705 ma non siamo riusciti a creare il link d\\'acquisto. Puoi riprovare dal carrello.': 'Preview generated \u2705 but we could not create the purchase link. You can try again from the cart.',\r\n    'Anteprima generata, ma errore nel salvataggio del bouquet.': 'Preview generated, but there was an error saving the bouquet.',\r\n    '\uD83C\uDF89 Perfetto! Ora puoi creare il tuo bouquet.': '\uD83C\uDF89 Perfect. You can now create your bouquet.',\r\n    '\uD83D\uDC4E Feedback negativo registrato. Genero un nuovo bouquet...': '\uD83D\uDC4E Negative feedback saved. Generating a new bouquet...',\r\n    'Stiamo preparando il bouquet per l\u2019acquisto': 'We are preparing the bouquet for purchase',\r\n    'Stiamo preparando il bouquet per l\\'acquisto': 'We are preparing the bouquet for purchase',\r\n    'Ultimo passaggio: colleghiamo il prodotto cos\u00EC eviti errori nel carrello.': 'Final step: we are connecting the product so the cart stays correct.',\r\n    'Ultimo passaggio: colleghiamo il prodotto cosi eviti errori nel carrello.': 'Final step: we are connecting the product so the cart stays correct.',\r\n    'L\u2019immagine sta prendendo forma': 'The image is taking shape',\r\n    'L\\'immagine sta prendendo forma': 'The image is taking shape',\r\n    'Il render finale \u00E8 in arrivo': 'The final render is on the way',\r\n    'Il render finale e in arrivo': 'The final render is on the way',\r\n    'Il render finale \u00E8 in arrivo: stiamo rifinendo proporzioni, luci e dettagli.': 'The final render is on the way: we are refining proportions, lighting and details.',\r\n    'Il render finale e in arrivo: stiamo rifinendo proporzioni, luci e dettagli.': 'The final render is on the way: we are refining proportions, lighting and details.',\r\n    'Stiamo scrivendo i dettagli del bouquet': 'We are writing the bouquet details',\r\n    'Descrizione, significato e occasione possono arrivare anche prima della foto.': 'Description, meaning and occasion may arrive even before the photo.',\r\n    'Prepariamo immagine, descrizione e acquisto sicuro.': 'Preparing image, description and secure purchase.',\r\n    'Analisi composizione': 'Composition analysis',\r\n    'Rigenera': 'Regenerate',\r\n    'Ti piace questo bouquet?': 'Do you like this bouquet?',\r\n    'Mi piace': 'I like it',\r\n    'Non mi piace': 'I do not like it',\r\n    'Informazioni sul bouquet': 'Bouquet information',\r\n    'Descrizione completa': 'Full description',\r\n    'Descrizione non disponibile': 'Description not available',\r\n    'Significato': 'Meaning',\r\n    'Significato non disponibile': 'Meaning not available',\r\n    'Occasione perfetta': 'Perfect occasion',\r\n    'Perfetto per ogni occasione': 'Perfect for any occasion',\r\n    'Composizione non disponibile': 'Composition not available',\r\n    'Altri bouquet che potrebbero piacerti': 'Other bouquets you may like',\r\n    'Ecco alcune alternative simili apprezzate da altri utenti:': 'Here are similar alternatives appreciated by other users:',\r\n    'Similarit\u00E0': 'Similarity',\r\n    'Similarita': 'Similarity',\r\n    'Riprova': 'Try again',\r\n    'Cura del bouquet': 'Bouquet care',\r\n    'Composizione': 'Composition',\r\n    'Immagine generata con AI a scopo dimostrativo. I fiori consegnati saranno esattamente del colore e del numero selezionato. Grazie del supporto \uD83D\uDC9A': 'AI-generated image for preview purposes. The delivered flowers will match the selected colors and quantities. Thank you for the support \uD83D\uDC9A',\r\n    'Scopri di pi\u00F9 \u2192': 'Learn more \u2192',\r\n    'Scopri di piu \u2192': 'Learn more \u2192',\r\n    'Combinazione non consentita': 'Combination not allowed',\r\n    'Fiori che causano il problema:': 'Flowers causing the issue:',\r\n    'Fiori che causano il problema': 'Flowers causing the issue',\r\n    'Tocca la \u2715 per rimuovere un fiore': 'Tap \u2715 to remove a flower',\r\n    'Espandi dettagli': 'Show details',\r\n    'Riduci dettagli': 'Hide details',\r\n    'Suggeriti per te': 'Suggested for you',\r\n    'Stiamo preparando suggerimenti\u2026': 'Preparing suggestions...',\r\n    'Stiamo preparando suggerimenti...': 'Preparing suggestions...',\r\n    'Caricamento suggerimenti\u2026': 'Loading suggestions...',\r\n    'Caricamento suggerimenti...': 'Loading suggestions...',\r\n    'Non riusciamo a caricare i suggerimenti ora.': 'We cannot load suggestions right now.',\r\n    'Nessun suggerimento disponibile al momento.': 'No suggestions available right now.',\r\n    'Nessuna proposta trovata.': 'No proposals found.',\r\n    'Ho capito': 'Got it',\r\n    'Ho Capito': 'Got it',\r\n    'Cancella tutto': 'Clear all',\r\n    'Ripristina': 'Restore',\r\n    'Penna': 'Pen',\r\n    'Gomma': 'Eraser',\r\n    'Tratto': 'Stroke',\r\n    'Guida': 'Guide',\r\n    'Ingrandisci': 'Enlarge',\r\n    'Reset zoom': 'Reset zoom',\r\n    'Nascondi strumenti': 'Hide tools',\r\n    'Mostra strumenti': 'Show tools',\r\n    'Dimensione tratto': 'Stroke size',\r\n    'Scegli uno strumento: qui ti spiego cosa fa.': 'Choose a tool: I will explain what it does here.',\r\n    'Penna attiva: scrivi o disegna sul biglietto. Un tocco fermo lascia un puntino.': 'Pen active: write or draw on the card. One still tap leaves a dot.',\r\n    'Gomma attiva: passa sopra a un segno per cancellarlo.': 'Eraser active: move over a mark to erase it.',\r\n    'Tratto selezionato: aumenta o riduci lo spessore del segno.': 'Stroke selected: increase or reduce the mark thickness.',\r\n    'Cancella tutto rimuove tutti i segni disegnati.': 'Clear all removes every drawn mark.',\r\n    'Annulla rimuove l\u2019ultima modifica al disegno.': 'Undo removes the last drawing change.',\r\n    \"Annulla rimuove l'ultima modifica al disegno.\": 'Undo removes the last drawing change.',\r\n    'Ripristina rimette l\u2019ultima modifica annullata.': 'Redo restores the last change you undid.',\r\n    \"Ripristina rimette l'ultima modifica annullata.\": 'Redo restores the last change you undid.',\r\n    'Ingrandisci apre il biglietto pi\u00F9 grande per scrivere meglio.': 'Enlarge opens the card bigger so you can write more easily.',\r\n    'Guida aperta: trovi i passaggi principali in parole semplici.': 'Guide opened: the main steps are explained in simple words.',\r\n    'Reset zoom riporta il biglietto alla dimensione iniziale.': 'Reset zoom returns the card to its starting size.',\r\n    'Strumenti nascosti: hai pi\u00F9 spazio per scrivere o disegnare.': 'Tools hidden: you have more room to write or draw.',\r\n    'Strumenti visibili: puoi cambiare penna, gomma e tratto.': 'Tools visible: you can change pen, eraser and stroke.',\r\n    'Font selezionato: il testo del biglietto user\u00E0 questo stile.': 'Font selected: the card text will use this style.',\r\n    'Apri scelta font': 'Open font picker',\r\n    'Disegna sul biglietto': 'Draw on the card',\r\n    'Rendi tuo il biglietto': 'Make the card yours',\r\n    'Scrivi il messaggio. Se vuoi, aggiungi una firma, un cuore o un piccolo disegno. Lo stamperemo cos\u00EC come lo vedi.': 'Write your message. If you want, add a signature, a heart, or a small drawing. We will print it exactly as you see it.',\r\n    'Disegna': 'Draw',\r\n    'Cancella': 'Erase',\r\n    'Segno': 'Stroke',\r\n    'Tratto': 'Stroke',\r\n    'Pi\u00F9 spazio': 'More space',\r\n    'Piu spazio': 'More space',\r\n    'Scrivi: usa il campo sotto al biglietto. Vedrai subito il risultato sopra.': 'Write: use the field below the card. You will see the result above right away.',\r\n    'Disegna: scegli Penna e firma con il dito. Un tocco fermo fa un puntino.': 'Draw: choose Pen and sign with your finger. One still tap makes a dot.',\r\n    'Cancella: scegli Gomma e passa sopra al segno. Con Cancella tutto ricominci da zero.': 'Erase: choose Eraser and move over the mark. With Clear all, you start over.',\r\n    'Penna: scrivi o disegna con il dito. Anche un solo tocco lascia un puntino.': 'Pen: write or draw with your finger. Even one tap leaves a dot.',\r\n    'Gomma: passa sopra a quello che vuoi togliere. Se vuoi ricominciare, usa Cancella tutto.': 'Eraser: move over what you want to remove. To start over, use Clear all.',\r\n    'Da telefono: premi Ingrandisci. Allarga due dita per avvicinare il biglietto e muovile insieme per spostarti.': 'On your phone: tap Enlarge. Spread two fingers to zoom in, then move them together to move around the card.',\r\n    'Non devi salvare: il biglietto si aggiorna da solo mentre scrivi.': 'No need to save: the card updates by itself while you write.',\r\n    'Nessun salvataggio: il biglietto si aggiorna da solo mentre scrivi.': 'No save button: the card updates by itself while you write.',\r\n    'Personalizza': 'Customize',\r\n    'Packaging': 'Packaging',\r\n    'Packaging su misura': 'Custom packaging',\r\n    'Fine': 'Done',\r\n    'Personalizzazioni salvate con successo!': 'Customizations saved successfully!',\r\n    'Seleziona colore:': 'Select color:',\r\n    'Decorazioni': 'Decorations',\r\n    'Scegli per me': 'Choose for me',\r\n    'Nebiolina': 'Gypsophila',\r\n    'Nebbiolina': 'Gypsophila',\r\n    'Fioristi veri, scelti per te': 'Real florists, picked for you',\r\n    'Fiori, dove e quando vuoi.': 'Flowers, where and when you want.',\r\n    'Trova chi pu\u00F2 prepararli davvero per il luogo e il momento che ti servono.': 'Find someone who can actually prepare them for the place and time you need.',\r\n    'Fiori, proprio': 'Flowers, exactly',\r\n    'come li immaginavi.': 'as you imagined them.',\r\n    'Dicci dove e quando. Al bouquet pensa Florame.': 'Tell us where and when. Florame will take care of the bouquet.',\r\n    'Ogni emozione ha i suoi fiori': 'Every feeling has its flowers',\r\n    'Quello che senti,': 'What you feel,',\r\n    'diventa fiori.': 'becomes flowers.',\r\n    'Dicci dove e quando. Al resto pensa Florame.': 'Tell us where and when. Florame will take care of the rest.',\r\n    'Il viale si apre': 'The avenue opens',\r\n    'Ora scegli': 'Now choose',\r\n    'dove deve arrivare.': 'where it should arrive.',\r\n    'Entra nel viale': 'Enter the avenue',\r\n    'AI + fioristi locali': 'AI + local florists',\r\n    \"Scegli i tuoi fiori\": \"Choose your flowers\",\r\n    \"al resto pensa l\u2019AI\": \"let AI shape your idea\",\r\n    \"Prima lo immagini\": \"Imagine your bouquet\",\r\n    \"poi vedi l\u2019anteprima\": \"then see the preview\",\r\n    \"Tu metti l\u2019idea\": \"Your unique idea\",\r\n    \"un fiorista la crea\": \"made by a real florist\",\r\n    \"Regala un\u2019emozione\": \"Give a little joy\",\r\n    \"creata proprio da te\": \"created just by you\",\r\n    'Crea bouquet unici': 'Create unique bouquets',\r\n    'Non scegliere un bouquet': 'Don\u2019t choose a bouquet',\r\n    'creane uno': 'create one',\r\n    'Niente cataloghi gi\u00E0 visti': 'Skip familiar catalogs',\r\n    'crea qualcosa di tuo': 'create your own',\r\n    \"con l'AI, in pochi tap\": 'with AI, in just a few taps',\r\n    'Scegli i fiori': 'Choose the flowers',\r\n    \"Genera l'anteprima\": 'Generate a preview',\r\n    'Spedisci senza pensieri': 'Send with ease',\r\n    'Noi lo facciamo fiorire.': 'We make it bloom.',\r\n    'Un bouquet reale, creato per il tuo momento.': 'A real bouquet, made for your moment.',\r\n    \"Dall'idea alla porta\": 'From idea to doorstep',\r\n    'Tu lo immagini.': 'You imagine it.',\r\n    'Florame lo fa accadere.': 'Florame makes it happen.',\r\n    \"Un gesto unico, pensato con l'AI e affidato alle mani giuste.\": 'A unique gesture, shaped with AI and entrusted to the right hands.',\r\n    'Come nasce un bouquet Florame': 'How a Florame bouquet comes to life',\r\n    '01 \u00B7 Immagina': '01 \u00B7 Imagine',\r\n    \"Un bouquet che prima non c'era.\": 'A bouquet that did not exist before.',\r\n    '02 \u00B7 Crea': '02 \u00B7 Create',\r\n    'Il fiorista lo rende vero.': 'The florist makes it real.',\r\n    '03 \u00B7 Consegna': '03 \u00B7 Deliver',\r\n    'Arriva nel momento giusto.': 'It arrives at the right moment.',\r\n    'Dove': 'Where',\r\n    'Il wow': 'The wow',\r\n    'Trova il mio bouquet': 'Find my bouquet',\r\n    'Scegli indirizzo di consegna': 'Choose a delivery address',\r\n    'Scegli data di consegna': 'Choose a delivery date',\r\n    'Consegna a': 'Delivery to',\r\n    'Inserisci indirizzo': 'Enter an address',\r\n    'Quando': 'When',\r\n    'Scegli la data': 'Choose a date',\r\n    'Scegli fascia oraria': 'Choose a time slot',\r\n    'Fascia': 'Slot',\r\n    \"Scegli l'orario\": 'Choose a time',\r\n    'Trova i fioristi': 'Find florists',\r\n    'Inserisci dove e quando: ti mostriamo chi pu\u00F2 servirti davvero.': 'Add where and when to see who can really serve you.',\r\n    'Mostrami i bouquet': 'Show me the bouquets',\r\n    'Inserisci indirizzo, data e fascia: ti mostriamo soltanto opzioni coerenti.': 'Add address, date and time slot to see only matching options.',\r\n    'Ora su Florame': 'Now on Florame',\r\n    'Fioristi in attivit\u00E0': 'Florists active now',\r\n    'Novit\u00E0 delle ultime 24 ore': 'Updates from the last 24 hours',\r\n    'Scegli il momento': 'Choose the moment',\r\n    'Un punto di partenza rapido, senza chiuderti in una categoria.': 'A quick starting point, without limiting you to one category.',\r\n    'Vedi tutti i bouquet': 'View all bouquets',\r\n    'Solo opzioni reali': 'Real options only',\r\n    'Per dirlo bene': 'Say it beautifully',\r\n    'Un gesto che resta': 'A gesture that lasts',\r\n    'Senza troppe parole': 'No need for many words',\r\n    'Momenti importanti': 'Important moments',\r\n    'Falli fiorire': 'Make them bloom',\r\n    'Tutti i filtri': 'All filters',\r\n    'Scelte per te': 'Picked for you',\r\n    'Scelti per te': 'Picked for you',\r\n    'Imposta': 'Set up',\r\n    'Ordina': 'Sort',\r\n    'Azzera': 'Reset',\r\n    'Mostra bouquet': 'Show bouquets',\r\n    'Ordinabili dal fiorista': 'Available to order from the florist',\r\n    'Aggiorno le opzioni': 'Updating options',\r\n    'La tua prima creazione parte da qui': 'Your first creation starts here',\r\n    'Crea bouquet': 'Create a bouquet',\r\n    'Tocca il cuore su una card per ritrovarla al volo.': 'Tap the heart on a card to find it again instantly.',\r\n    'Negozi della zona': 'Shops in your area',\r\n    'Fioristi vicino a te': 'Florists near you',\r\n    'Imposta dove e quando per vedere promesse precise.': 'Set where and when to see exact promises.',\r\n    'Fioristi e bouquet da esplorare.': 'Florists and bouquets to explore.',\r\n    'Visualizza fioristi come lista o mappa': 'View florists as a list or map',\r\n    'Navigazione fioristi': 'Florist navigation',\r\n    'Fiorista precedente': 'Previous florist',\r\n    'Fiorista successivo': 'Next florist',\r\n    'Lista': 'List',\r\n    'Apri mappa': 'Open map',\r\n    'Confronta fino a 3 negozi per questa consegna.': 'Compare up to 3 shops for this delivery.',\r\n    'Deseleziona': 'Deselect',\r\n    'Scelta trasparente': 'Transparent choice',\r\n    'Confronta i fioristi': 'Compare florists',\r\n    'Confrontiamo solo informazioni confermate per l\u2019indirizzo, la data e la fascia che hai scelto.': 'We compare only confirmed information for your chosen address, date and time slot.',\r\n    'Riprendi da qui': 'Continue from here',\r\n    'Visti di recente': 'Recently viewed',\r\n    'Perch\u00E9 Florame': 'Why Florame',\r\n    'Un bouquet senza sorprese': 'A bouquet without surprises',\r\n    'Se non \u00E8 da wow, non parte.': 'If it is not wow, it does not leave.',\r\n    'Pi\u00F9 controllo per te, pi\u00F9 trasparenza dal fiorista.': 'More control for you, more transparency from the florist.',\r\n    'Scopri perch\u00E9 scegliere Florame': 'Discover why to choose Florame',\r\n    '01 \u00B7 Scegli sul reale': '01 \u00B7 Choose what is real',\r\n    'Disponibilit\u00E0 vera': 'Real availability',\r\n    'Esplora ci\u00F2 che i fioristi possono preparare davvero.': 'Explore what florists can actually prepare.',\r\n    'Trova un fiorista': 'Find a florist',\r\n    '02 \u00B7 Rendilo tuo': '02 \u00B7 Make it yours',\r\n    'Design guidato dall\u2019AI': 'AI-guided design',\r\n    'Parti da un\u2019idea e costruisci il bouquet insieme a Florame.': 'Start from an idea and build the bouquet with Florame.',\r\n    'Crea adesso': 'Create now',\r\n    '03 \u00B7 Zero scatole al buio': '03 \u00B7 No more mystery boxes',\r\n    'Vedi il bouquet realmente preparato prima che parta.': 'See the actual bouquet before it leaves.',\r\n    'Scopri la garanzia': 'Discover the guarantee',\r\n    'Disponibilit\u00E0 reale': 'Real availability',\r\n    'Il fiorista conferma cosa pu\u00F2 preparare.': 'The florist confirms what they can prepare.',\r\n    'Slot concordato': 'Agreed time slot',\r\n    'Scegli quando deve arrivare.': 'Choose when it should arrive.',\r\n    'Foto prima della consegna': 'Photo before delivery',\r\n    'Vedi il bouquet realmente preparato.': 'See the bouquet that was actually prepared.',\r\n    'Su misura': 'Made to measure',\r\n    'Non trovi quello che cerchi?': 'Can\u2019t find what you\u2019re looking for?',\r\n    'Crea un bouquet su misura con i nostri fioristi.': 'Create a made-to-measure bouquet with our florists.',\r\n    'Personalizzalo insieme': 'Customize it together',\r\n    'Crea il tuo bouquet su misura': 'Create your made-to-measure bouquet',\r\n    'Florame AI': 'Florame AI',\r\n    'Crea il bouquet che immagini': 'Create the bouquet you imagine',\r\n    'Scegli i fiori. Gioca con i colori. Guarda la tua idea con l\u2019AI, poi affidala a un fiorista.': 'Choose the flowers. Play with colour. Preview your idea with AI, then let a florist bring it to life.',\r\n    'Inizia a creare': 'Start creating',\r\n    'Crea il tuo bouquet con Florame AI': 'Create your bouquet with Florame AI',\r\n    'Un bouquet che non esiste ancora.': 'A bouquet that does not exist yet.',\r\n    'Descrivilo, scegli lo stile e costruiscilo fiore per fiore con i nostri fioristi.': 'Describe it, choose the style and build it flower by flower with our florists.',\r\n    'Inizia a crearlo': 'Start creating it',\r\n    'Guidato dall\u2019AI, fatto da un fiorista': 'AI-guided, florist-made',\r\n    'Oppure esplora i bouquet': 'Or explore bouquets',\r\n    'Chiudi anteprima': 'Close preview',\r\n    'Crealo tu, oppure lasciati ispirare.': 'Create it yourself or get inspired.',\r\n    'Scopri i bouquet': 'Discover bouquets',\r\n    'Consegna': 'Delivery',\r\n    'Ritiro in negozio': 'Store pickup',\r\n    'Vieni da noi': 'Come to us',\r\n    \"Se scegli Consegna, useremo l'indirizzo impostato sopra.\": 'If you choose Delivery, we\u2019ll use the address set above.',\r\n    'Vuoi scegliere ogni dettaglio?': 'Want to choose every detail?',\r\n    'Crealo come lo immagini': 'Create it your way',\r\n    'Iscriviti gratis': 'Join for free',\r\n    'Accedi, accetta il regolamento e attiva i tuoi punti.': 'Log in, accept the terms and activate your points.',\r\n    'IL TUO ORDINE': 'YOUR ORDER',\r\n    'Esplora bouquet': 'Explore bouquets',\r\n    'Crea su misura': 'Create your own',\r\n    'Crisantemi': 'Chrysanthemums',\r\n    'Garofani': 'Carnations',\r\n    'Roselline': 'Roses \u00B7 50 cm',\r\n    'Semprevivi': 'Everlasting flowers',\r\n    'Effetto nuvola': 'Cloud effect',\r\n    'Nebiolina effetto nuvola': 'Cloud-effect gypsophila',\r\n    'Nebbiolina effetto nuvola': 'Cloud-effect gypsophila',\r\n    'Nebbiolina Effetto Nuvola': 'Cloud-effect gypsophila',\r\n    'Verde': 'Green',\r\n    'Verde decorativo': 'Decorative greenery',\r\n    'CONFEZIONE': 'PACKAGING',\r\n    'Scegli il tocco finale': 'Choose the finishing touch',\r\n    'Personalizza una sezione alla volta. Le scelte tornano subito nella composizione live.': 'Customize one section at a time. Every choice updates your live composition instantly.',\r\n    'Fogliame extra': 'Extra foliage',\r\n    'Opzioni Carta': 'Paper options',\r\n    'Opzioni Nastro': 'Ribbon options',\r\n    'Caricamento\u2026': 'Loading\u2026',\r\n    'Caricamento...': 'Loading\u2026',\r\n    'Carta Grezza': 'Kraft paper',\r\n    'Carta grezza': 'Kraft paper',\r\n    'Crisantemi Santini': 'Santini chrysanthemums',\r\n    'Crisantemo Santini': 'Santini chrysanthemum',\r\n    'Crisantemi Margherita': 'Daisy-form chrysanthemums',\r\n    'Crisantemo Margherita': 'Daisy-form chrysanthemum',\r\n    'Carta Kraft': 'Kraft paper',\r\n    'Naturale e materica': 'Natural and tactile',\r\n    'Kraft': 'Kraft',\r\n    'Carta Tessuto': 'Fabric paper',\r\n    'Carta tessuto': 'Fabric paper',\r\n    'Morbida ed elegante': 'Soft and elegant',\r\n    'Tessuto': 'Fabric',\r\n    'tessuto': 'fabric',\r\n    'Misti': 'Mixed',\r\n    'misti': 'mixed',\r\n    'Misto': 'Mixed',\r\n    'misto': 'mixed',\r\n    'Nastro': 'Ribbon',\r\n    'nastro': 'ribbon',\r\n    'Rafia Naturale': 'Natural raffia',\r\n    'Rafia naturale': 'Natural raffia',\r\n    'Semplice e botanica': 'Simple and botanical',\r\n    'Raffinato e coordinabile': 'Refined and easy to match',\r\n    'Volume leggero e luminoso': 'Light, airy volume',\r\n    'Pi\u00F9 volume e contrasto': 'More volume and contrast',\r\n    'Passaggio 1 di 3': 'Step 1 of 3',\r\n    'Passaggio 2 di 3': 'Step 2 of 3',\r\n    'Passaggio 3 di 3': 'Step 3 of 3',\r\n    'Continua: Nastro': 'Continue: Ribbon',\r\n    'Continua: Dettagli': 'Continue: Details',\r\n    'Salva confezione': 'Save packaging',\r\n    'Chiudi senza salvare': 'Close without saving',\r\n    'Affina la ricerca': 'Refine your search',\r\n    'Nuova casa': 'New home',\r\n    'Nascita': 'New baby',\r\n    'Matrimonio': 'Wedding',\r\n    'Condoglianze': 'Condolences',\r\n    'Guarigione': 'Get well',\r\n    'Pronta Guarigione': 'Get well soon',\r\n    'Chiedere scusa': 'Apology',\r\n    'Lavoro': 'Work',\r\n    'Festa': 'Celebration',\r\n    'Interrompi generazione': 'Stop generation',\r\n    'Quando regalarlo': 'When to give it',\r\n    'Come prendertene cura': 'How to care for it',\r\n    'Serve aiuto?': 'Need help?',\r\n    'Se sei indeciso, lasciati guidare dalla nostra AI per creare il regalo perfetto in pochi secondi!': 'Not sure where to start? Let our AI guide you to the perfect gift in seconds!',\r\n    'Avvia Creazione Guidata': 'Start guided creation',\r\n    'No, voglio scegliere manualmente': 'No, I\u2019ll choose manually',\r\n    'No, torna indietro': 'No, go back',\r\n    'Scegli il colore della carta': 'Choose the paper color',\r\n    'Scegli il colore del nastro': 'Choose the ribbon color',\r\n    'Rafia': 'Raffia',\r\n    'Naturale': 'Natural',\r\n    'naturale': 'natural',\r\n    'Bianco': 'White',\r\n    'bianco': 'white',\r\n    'Rosso': 'Red',\r\n    'rosso': 'red',\r\n    'Giallo': 'Yellow',\r\n    'giallo': 'yellow',\r\n    'Arancione': 'Orange',\r\n    'arancione': 'orange',\r\n    'Blu': 'Blue',\r\n    'blu': 'blue',\r\n    'Azzurro': 'Light blue',\r\n    'azzurro': 'light blue',\r\n    'Celeste': 'Sky blue',\r\n    'celeste': 'sky blue',\r\n    'Turchese': 'Turquoise',\r\n    'turchese': 'turquoise',\r\n    'Viola': 'Purple',\r\n    'viola': 'purple',\r\n    'Lilla': 'Lilac',\r\n    'lilla': 'lilac',\r\n    'Lavanda': 'Lavender',\r\n    'lavanda': 'lavender',\r\n    'Fucsia': 'Fuchsia',\r\n    'fucsia': 'fuchsia',\r\n    'Magenta': 'Magenta',\r\n    'magenta': 'magenta',\r\n    'Rosa chiaro': 'Light pink',\r\n    'rosa chiaro': 'light pink',\r\n    'Rosa chiara': 'Light pink',\r\n    'rosa chiara': 'light pink',\r\n    'Rosa antico': 'Dusty pink',\r\n    'rosa antico': 'dusty pink',\r\n    'Rosa cipria': 'Blush pink',\r\n    'rosa cipria': 'blush pink',\r\n    'Rosa pastello': 'Pastel pink',\r\n    'rosa pastello': 'pastel pink',\r\n    'Corallo': 'Coral',\r\n    'corallo': 'coral',\r\n    'Pesca': 'Peach',\r\n    'pesca': 'peach',\r\n    'Salmone': 'Salmon',\r\n    'salmone': 'salmon',\r\n    'Crema': 'Cream',\r\n    'crema': 'cream',\r\n    'Avorio': 'Ivory',\r\n    'avorio': 'ivory',\r\n    'Beige': 'Beige',\r\n    'beige': 'beige',\r\n    'Marrone': 'Brown',\r\n    'marrone': 'brown',\r\n    'Bordeaux': 'Burgundy',\r\n    'bordeaux': 'burgundy',\r\n    'Borgogna': 'Burgundy',\r\n    'borgogna': 'burgundy',\r\n    'Nero': 'Black',\r\n    'nero': 'black',\r\n    'Grigio': 'Gray',\r\n    'grigio': 'gray',\r\n    'Grigia': 'Gray',\r\n    'grigia': 'gray',\r\n    'Argento': 'Silver',\r\n    'argento': 'silver',\r\n    'Argentato': 'Silver',\r\n    'argentato': 'silver',\r\n    'Oro': 'Gold',\r\n    'oro': 'gold',\r\n    'Dorato': 'Golden',\r\n    'dorato': 'golden',\r\n    'Champagne': 'Champagne',\r\n    'champagne': 'champagne',\r\n    'Multicolore': 'Multicolor',\r\n    'multicolore': 'multicolor',\r\n    'Multicolor': 'Multicolor',\r\n    'multicolor': 'multicolor',\r\n    'Bouquet in trend': 'Trending bouquets',\r\n    'Nessun bouquet in trend (ancora)': 'No trending bouquets yet',\r\n    'I pi\u00F9 amati dalla community, ordinati per \u2764\uFE0F. Salvali tra i preferiti in un tap.': 'The community\u2019s most loved, sorted by \u2764\uFE0F. Save them to favorites in one tap.',\r\n    'I piu amati dalla community, ordinati per \u2764\uFE0F. Salvali tra i preferiti in un tap.': 'The community\u2019s most loved, sorted by \u2764\uFE0F. Save them to favorites in one tap.',\r\n    'Torna pi\u00F9 tardi: appena arrivano nuovi like, qui si accende la classifica \u2728': 'Come back later: as soon as new likes arrive, the ranking will light up here. \u2728',\r\n    'Torna piu tardi: appena arrivano nuovi like, qui si accende la classifica \u2728': 'Come back later: as soon as new likes arrive, the ranking will light up here. \u2728',\r\n    'Nastro in Tessuto': 'Fabric ribbon',\r\n    'Scegli lo stile dell\u2019involucro: naturale (kraft) o elegante (tessuto).': 'Choose the wrapping style: natural kraft or elegant fabric.',\r\n    'Scegli lo stile dell\\'involucro: naturale (kraft) o elegante (tessuto).': 'Choose the wrapping style: natural kraft or elegant fabric.',\r\n    'L\u2019involucro': 'The wrapping',\r\n    'L\\'involucro': 'The wrapping',\r\n    'l\u2019involucro': 'the wrapping',\r\n    'l\\'involucro': 'the wrapping',\r\n    'involucro': 'wrapping',\r\n    'La Nebbiolina (Gypsophila) aggiunge un tocco di leggerezza e volume etereo (\"Fiore di Nuvola\"), simboleggiando purezza e amore eterno.': 'Gypsophila adds lightness and airy volume, symbolizing purity and lasting love.',\r\n    '*In estate pu\u00F2 essere sostituita da Gypsophila essiccata o semprevivi bianchi per garantire la massima durata.': '*In summer it may be replaced with dried gypsophila or white statice to guarantee longer life.',\r\n    'Il Verde decorativo comprende vari tipi di fogliame come felci, eucalipto e ruscus: aggiunge volume, texture e freschezza al bouquet, creando uno sfondo naturale che fa risaltare i colori dei fiori principali.': 'Decorative greenery includes foliage such as ferns, eucalyptus and ruscus: it adds volume, texture and freshness, creating a natural backdrop that makes the main flower colors stand out.',\r\n    'Aggiunge anche una piacevole profumazione e pu\u00F2 aumentare la durata del bouquet: \u00E8 un elemento fondamentale per composizioni bilanciate e professionali.': 'It also adds a pleasant scent and can extend the bouquet\u2019s life: it is essential for balanced, professional arrangements.',\r\n    'Il nastro completa il bouquet: rustico (rafia) o pi\u00F9 ricercato (tessuto).': 'The ribbon completes the bouquet: rustic raffia or a more refined fabric option.',\r\n    'Il nastro completa il bouquet: rustico (rafia) o piu ricercato (tessuto).': 'The ribbon completes the bouquet: rustic raffia or a more refined fabric option.',\r\n    'La carta grezza \u00E8 una scelta naturale ed elegante per l\\'avvolgimento dei bouquet. Con la sua texture irregolare e l\\'aspetto artigianale, aggiunge un tocco rustico e autentico alla presentazione floreale.': 'Kraft paper is a natural, elegant choice for bouquet wrapping. Its irregular texture and handmade look add a rustic, authentic touch to the floral presentation.',\r\n    'La carta grezza \u00E8 una scelta naturale ed elegante per l\u2019avvolgimento dei bouquet. Con la sua texture irregolare e l\u2019aspetto artigianale, aggiunge un tocco rustico e autentico alla presentazione floreale.': 'Kraft paper is a natural, elegant choice for bouquet wrapping. Its irregular texture and handmade look add a rustic, authentic touch to the floral presentation.',\r\n    'Realizzata con fibre naturali non trattate, rispetta l\\'ambiente e si armonizza perfettamente con la bellezza organica dei fiori. Ideale per uno stile naturale e informale.': 'Made with untreated natural fibers, it respects the environment and pairs beautifully with the organic beauty of flowers. Ideal for a natural, informal style.',\r\n    'Realizzata con fibre naturali non trattate, rispetta l\u2019ambiente e si armonizza perfettamente con la bellezza organica dei fiori. Ideale per uno stile naturale e informale.': 'Made with untreated natural fibers, it respects the environment and pairs beautifully with the organic beauty of flowers. Ideal for a natural, informal style.',\r\n    'La carta tessuto offre un\\'eleganza raffinata e una finitura morbida al tatto. La sua struttura robusta ma flessibile permette di creare avvolgimenti sofisticati con pieghe delicate.': 'Fabric paper offers refined elegance and a soft-touch finish. Its sturdy yet flexible structure creates sophisticated wrapping with delicate folds.',\r\n    'La carta tessuto offre un\u2019eleganza raffinata e una finitura morbida al tatto. La sua struttura robusta ma flessibile permette di creare avvolgimenti sofisticati con pieghe delicate.': 'Fabric paper offers refined elegance and a soft-touch finish. Its sturdy yet flexible structure creates sophisticated wrapping with delicate folds.',\r\n    'Disponibile in diversi colori, permette di personalizzare ulteriormente il bouquet, creando contrasti cromatici o armonie ton sur ton con i fiori scelti. Perfetta per occasioni formali e regali speciali.': 'Available in several colors, it lets you further personalize the bouquet with color contrasts or tone-on-tone harmony. Perfect for formal occasions and special gifts.',\r\n    'La rafia naturale \u00E8 un materiale organico e biodegradabile ricavato da foglie di palma. Dona un aspetto rustico e autentico al bouquet, perfetto per composizioni dal gusto naturale.': 'Natural raffia is an organic, biodegradable material made from palm leaves. It gives the bouquet a rustic, authentic look, perfect for natural compositions.',\r\n    '\u00C8 resistente, leggera e ideale per un packaging semplice ma curato, soprattutto con carte kraft e stili \u201Cbotanici\u201D.': 'It is strong, lightweight and ideal for simple but polished packaging, especially with kraft paper and botanical styles.',\r\n    'E resistente, leggera e ideale per un packaging semplice ma curato, soprattutto con carte kraft e stili \"botanici\".': 'It is strong, lightweight and ideal for simple but polished packaging, especially with kraft paper and botanical styles.',\r\n    'Vedi': 'See',\r\n    'Vedi tutto': 'See all',\r\n    'Vedi tutti': 'See all',\r\n    'Vedi Ordine': 'See order',\r\n    'Finalizza il tuo bouquet': 'Finalize your bouquet',\r\n    'Sto aggiungendo...': 'Adding...',\r\n    'Invio in corso...': 'Sending...',\r\n    'Tentativo di riconnessione...': 'Reconnecting...',\r\n    'Timeout durante la preparazione del bouquet': 'Timeout while preparing the bouquet',\r\n    'Errore nella creazione del prodotto': 'Error creating the product',\r\n    'Errore risposta': 'Response error',\r\n    'Errore stato creazione': 'Creation status error',\r\n\r\n    'gennaio': 'January',\r\n    'febbraio': 'February',\r\n    'marzo': 'March',\r\n    'aprile': 'April',\r\n    'maggio': 'May',\r\n    'giugno': 'June',\r\n    'luglio': 'July',\r\n    'agosto': 'August',\r\n    'settembre': 'September',\r\n    'ottobre': 'October',\r\n    'novembre': 'November',\r\n    'dicembre': 'December',\r\n    'luned\u00EC': 'Monday',\r\n    'marted\u00EC': 'Tuesday',\r\n    'mercoled\u00EC': 'Wednesday',\r\n    'gioved\u00EC': 'Thursday',\r\n    'venerd\u00EC': 'Friday',\r\n    'sabato': 'Saturday',\r\n    'domenica': 'Sunday'\r\n  };\r\n\r\n  // BEGIN reviewed English copy (scripts/build-storefront-english-copy.mjs)\r\n  Object.assign(TEXT, {\r\n    \"Navigazione Florame\": \"florame.ai navigation\",\r\n    \"Navigazione Home Florame\": \"florame.ai Home navigation\",\r\n    \"Florame Home\": \"florame.ai Home\",\r\n    \"Why Florame\": \"Why florame.ai\",\r\n    \"Why choose Florame\": \"Why choose florame.ai\",\r\n    \"Discover Florame\": \"Discover florame.ai\",\r\n    \"Verified by Florame\": \"Verified by florame.ai\",\r\n    \"Florame support\": \"florame.ai support\",\r\n    \"On request \u00B7 Florame\": \"On request \u00B7 florame.ai\",\r\n    \"Create your bouquet with Florame AI\": \"Create your bouquet with florame.ai\",\r\n    \"Versione storefront Florame\": \"florame.ai storefront version\",\r\n    \"Florame storefront version\": \"florame.ai storefront version\",\r\n    \"Fioristi\": \"Florists\",\r\n    \"Fiorista\": \"Florist\",\r\n    \"Inizia\": \"Get started\",\r\n    \"I tuoi fioristi\": \"Your florists\",\r\n    \"Scegli tra fioristi recenti e preferiti\": \"Choose from recent and saved florists\",\r\n    \"Fioristi visti di recente\": \"Recently viewed florists\",\r\n    \"Fioristi preferiti\": \"Saved florists\",\r\n    \"Ultimi visitati e preferiti, in un solo posto.\": \"Recently viewed and saved shops, all in one place.\",\r\n    \"Ritrova subito i fioristi che hai salvato.\": \"Find your saved florists here.\",\r\n    \"Scegli quali fioristi visualizzare\": \"Choose which florists to show\",\r\n    \"Fioristi consigliati\": \"Recommended florists\",\r\n    \"Vista lista\": \"List view\",\r\n    \"Vista mappa\": \"Map view\",\r\n    \"Chiudi confronto\": \"Close comparison\",\r\n    \"Chiudi inserimento indirizzo\": \"Close address entry\",\r\n    \"Svuota indirizzo\": \"Clear address\",\r\n    \"Novit\u00E0 disponibili per 24 ore\": \"Updates available for 24 hours\",\r\n    \"Apri Florame Club\": \"Open florame.ai Club\",\r\n    \"Scelti da chi ha gi\u00E0 acquistato\": \"Picked by customers\",\r\n    \"Dal fiorista\": \"From the florist\",\r\n    \"Bouquet per te\": \"Bouquets for you\",\r\n    \"Imposta luogo e orario per prezzi e disponibilit\u00E0 reali.\": \"Choose where and when to check prices and availability.\",\r\n    \"Pi\u00F9 recenti\": \"Most recent\",\r\n    \"Aggiorno la disponibilit\u00E0...\": \"Updating availability\u2026\",\r\n    \"Troviamo fiori e consegna nella zona.\": \"Finding flowers and delivery options in the area.\",\r\n    \"Nessun bouquet ordinabile per questa consegna.\": \"No bouquets can be ordered for this delivery.\",\r\n    \"Componila fiore per fiore e ritrovala sempre qui.\": \"Create it flower by flower and find it here anytime.\",\r\n    \"Salva qui i bouquet che ami\": \"Save the bouquets you love here\",\r\n    \"Controlli composizione\": \"Bouquet controls\",\r\n    \"Azioni bouquet\": \"Bouquet actions\",\r\n    \"La tua confezione\": \"Your wrapping\",\r\n    \"Il tocco finale, come piace a te.\": \"The finishing touch, just as you like it.\",\r\n    \"Sezioni confezione\": \"Wrapping options\",\r\n    \"Scopri le opzioni carta\": \"Explore paper options\",\r\n    \"Scopri la nebbiolina\": \"Learn about gypsophila\",\r\n    \"Scegli colore\": \"Choose a colour\",\r\n    \"Riduci quantit\u00E0\": \"Decrease quantity\",\r\n    \"Aumenta quantit\u00E0\": \"Increase quantity\",\r\n    \"Rimuovi fiore\": \"Remove flower\",\r\n    \"Svuota bouquet\": \"Clear bouquet\",\r\n    \"Rimuovere tutti i fiori?\": \"Remove all flowers?\",\r\n    \"Il mio bouquet Florame\": \"My florame.ai bouquet\",\r\n    \"Non riesco a collegare il bouquet al tuo account. Riprova.\": \"We couldn\u2019t save this bouquet to your account. Try again.\",\r\n    \"Generazione annullata\": \"Generation cancelled\",\r\n    \"Generazione annullata. Puoi modificare la scelta e ripartire.\": \"Generation cancelled. You can change your selection and start again.\",\r\n    \"Timeout durante la generazione del bouquet\": \"The bouquet preview took too long. Try again.\",\r\n    \"Non ancora verificato.\": \"Not checked yet.\",\r\n    \"Aggiornato ora\": \"Updated just now\",\r\n    \"Ok, useremo solo i fiori realmente disponibili nella tua zona.\": \"We\u2019ll use only flowers available in your area.\",\r\n    \"Fiori filtrati per la tua zona\": \"Flowers available in your area\",\r\n    \"Puoi continuare mentre finisco.\": \"You can keep browsing while we finish.\",\r\n    \"Vale anche per la sezione \u201CCrea\u201D.\": \"This also applies in Create.\",\r\n    \"Generazione interrotta\": \"Generation interrupted\",\r\n    \"Non siamo riusciti a recuperare le proposte in background.\": \"We couldn\u2019t retrieve your bouquet suggestions. Try again.\",\r\n    \"Nessuna proposta generata\": \"No suggestions generated\",\r\n    \"Lascia fare al caso e scopri la magia.\": \"Let a surprise combination inspire you.\",\r\n    \"Bouquet non disponibile\": \"Bouquet unavailable\",\r\n    \"Non siamo riusciti a preparare il bouquet\": \"We couldn\u2019t prepare your bouquet preview\",\r\n    \"URL prodotto non disponibile\": \"The product link is unavailable\",\r\n    \"Ora puoi generare il tuo bouquet senza problemi.\": \"You\u2019re ready to generate your bouquet preview.\",\r\n    \"Genera il bouquet!\": \"Generate your bouquet\",\r\n    \"Quantit\u00E0 del bouquet non valida.\": \"The bouquet quantity is invalid.\",\r\n    \"Disponibile nella tua zona\": \"Available in your area\",\r\n    \"Apro il bouquet\": \"Opening your bouquet\",\r\n    \"Carico la pagina prodotto.\": \"Loading the product page.\",\r\n    \"Vai al caricamento precedente\": \"Go to the previous generation\",\r\n    \"Vai alle proposte precedenti\": \"Go to previous suggestions\",\r\n    \"Ultimo bouquet pronto\": \"Your latest bouquet is ready\",\r\n    \"Torna all'ultimo bouquet\": \"Return to your latest bouquet\",\r\n    \"Caricamento in corso\": \"Loading\",\r\n    \"Lascia lavorare la generazione in background o fermala subito.\": \"Keep generating in the background or stop now.\",\r\n    \"La bubble resta attiva\": \"The generation bubble stays active\",\r\n    \"Annulla la richiesta\": \"Cancel the request\",\r\n    \"La posizione non \u00E8 disponibile su questo dispositivo. Inserisci l\u2019indirizzo.\": \"Location is unavailable on this device. Enter the address instead.\",\r\n    \"Trovo l\u2019indirizzo\u2026\": \"Finding the address\u2026\",\r\n    \"Ho trovato la via, ma non il civico. Aggiungilo e scegli l\u2019indirizzo completo.\": \"We found the street, but not the street number. Add it and select the full address.\",\r\n    \"Permesso posizione negato. Puoi inserire l\u2019indirizzo manualmente.\": \"Location permission was denied. You can enter the address manually.\",\r\n    \"Non riesco a ricavare l\u2019indirizzo esatto. Inseriscilo manualmente.\": \"We couldn\u2019t find the exact address. Enter it manually.\",\r\n    \"Ci stiamo mettendo un attimo\u2026 riprova tra qualche secondo.\": \"This is taking a moment. Try again in a few seconds.\",\r\n    \"Connessione instabile. Riprova tra qualche secondo.\": \"The connection is unstable. Try again in a few seconds.\",\r\n    \"Ops, c\u2019\u00E8 stato un problema tecnico. Riprova tra poco.\": \"Something went wrong. Try again shortly.\",\r\n    \"Ci dispiace \uD83D\uDC94: la zona selezionata non \u00E8 servita dal servizio.\": \"Sorry \uD83D\uDC94, delivery is not available in this area yet.\",\r\n    \"Vuoi che ti avvisiamo appena iniziamo a consegnare l\u00EC? Ci aiuti tantissimo a scegliere le prossime zone da raggiungere.\": \"Would you like to know when delivery reaches this area? Your interest helps us plan where to go next.\",\r\n    \"Grazie! Ti abbiamo gi\u00E0 inserito in lista per questo CAP.\": \"Thank you! You\u2019re already on the notification list for this postal code.\",\r\n    \"Non siamo riusciti a registrare la richiesta. Riprova tra poco.\": \"We couldn\u2019t save your request. Try again shortly.\",\r\n    \"Catalogo su richiesta\": \"Bouquets on request\",\r\n    \"Non riesco ad aggiungerlo\": \"We couldn\u2019t add it\",\r\n    \"questo bouquet\": \"this bouquet\",\r\n    \"altri fioristi\": \"other florists\",\r\n    \"Scegli ritiro\": \"Choose pickup\",\r\n    \"Scegli consegna\": \"Choose delivery\",\r\n    \"Scegli indirizzo, data e fascia per questa consegna\": \"Choose an address, date and time window for this delivery\",\r\n    \"Scegli un altro momento per questo bouquet\": \"Choose another time for this bouquet\",\r\n    \"Invia la richiesta al carrello; autorizzerai il totale al checkout e sarai addebitato solo dopo la conferma del fiorista\": \"Add the request to your cart. The total is authorised at checkout and charged only after the florist confirms.\",\r\n    \"Vedi bouquet\": \"View bouquet\",\r\n    \"Apri il bouquet\": \"Open bouquet\",\r\n    \"Trova chi consegna qui\": \"Find a florist who delivers here\",\r\n    \"Trova un fiorista che consegna a questo indirizzo\": \"Find a florist who delivers to this address\",\r\n    \"Trova un bouquet simile acquistabile\": \"Find a similar bouquet you can order\",\r\n    \"Scegli fiorista\": \"Choose a florist\",\r\n    \"Bouquet non disponibile ora\": \"Bouquet currently unavailable\",\r\n    \"Ordinabile per questa consegna\": \"Can be ordered for this delivery\",\r\n    \"Ti avviseremo quando torna\": \"We\u2019ll let you know when it\u2019s back\",\r\n    \"Non disponibile da questo fiorista\": \"Unavailable from this florist\",\r\n    \"Non disponibile ora\": \"Currently unavailable\",\r\n    \"un fiorista\": \"a florist\",\r\n    \"opzioni disponibili\": \"available options\",\r\n    \"Chiudi indirizzo del negozio\": \"Close shop address\",\r\n    \"Disponibili da\": \"Available from\",\r\n    \"Consegna da controllare\": \"Delivery needs checking\",\r\n    \"Senza indirizzo\": \"No address selected\",\r\n    \"I bouquet restano visibili. Aggiungi l\u2019indirizzo solo per controllare la consegna.\": \"You can still browse bouquets. Add an address to check delivery.\",\r\n    \"Vedi bouquet casuali. Inseriscilo per verificare disponibilit\u00E0 e consegna.\": \"You\u2019re browsing bouquet ideas. Enter an address to check availability and delivery.\",\r\n    \"Nessun risultato\": \"No results\",\r\n    \"Caricamento interrotto\": \"Loading interrupted\",\r\n    \"Controllo non riuscito\": \"Check unsuccessful\",\r\n    \"Conteggio non disponibile\": \"Count unavailable\",\r\n    \"bouquet creati\": \"created bouquets\",\r\n    \"bouquet preferiti\": \"saved bouquets\",\r\n    \"Riprova la vetrina\": \"Reload the selection\",\r\n    \"Scopri\": \"Explore\",\r\n    \"Tutti i bouquet\": \"All bouquets\",\r\n    \"Tutti i giorni\": \"Every day\",\r\n    \"Tutto il giorno\": \"All day\",\r\n    \"Consegna locale: verifica il CAP\": \"Local delivery: check your postal code\",\r\n    \"Inserisci l'indirizzo per verificare la consegna\": \"Enter an address to check delivery\",\r\n    \"recensioni\": \"reviews\",\r\n    \"Chiudi orari e contatti\": \"Close hours and contact details\",\r\n    \"Fiorista Florame\": \"florame.ai florist\",\r\n    \"Non ci sono ancora recensioni verificate. Il prossimo ordine potrebbe essere il primo.\": \"No verified reviews yet. The next order could be the first.\",\r\n    \"1 ordine verificato\": \"1 verified order\",\r\n    \"ordini verificati\": \"verified orders\",\r\n    \"Distribuzione delle valutazioni\": \"Rating breakdown\",\r\n    \"Mostreremo la media quando ci saranno almeno 5 ordini verificati.\": \"An average rating will appear after at least 5 verified orders.\",\r\n    \"Cliente verificato\": \"Verified customer\",\r\n    \"Risposta precedente \u00B7 autore non verificato\": \"Earlier response \u00B7 author unverified\",\r\n    \"Ordine verificato Florame\": \"Verified florame.ai order\",\r\n    \"Foto e video della recensione\": \"Review photos and videos\",\r\n    \"Video allegato alla recensione\": \"Video attached to the review\",\r\n    \"Foto allegata alla recensione\": \"Photo attached to the review\",\r\n    \"Risposta del fiorista\": \"Florist\u2019s reply\",\r\n    \"Mostra altre recensioni\": \"Show more reviews\",\r\n    \"Chiudi recensioni\": \"Close reviews\",\r\n    \"Ordini verificati Florame\": \"Verified florame.ai orders\",\r\n    \"Caricamento recensioni\": \"Loading reviews\",\r\n    \"Apri le recensioni\": \"Open reviews\",\r\n    \"Le recensioni non si sono caricate\": \"Reviews couldn\u2019t be loaded\",\r\n    \"Riprova tra poco. La reputazione Google resta separata nelle informazioni del negozio.\": \"Try again shortly. Google ratings are shown separately in the shop details.\",\r\n    \"Recensioni Florame\": \"florame.ai reviews\",\r\n    \"Chiudi informazioni\": \"Close information\",\r\n    \"Informazioni del fiorista\": \"Florist information\",\r\n    \"fiori fatti per te\": \"flowers made for you\",\r\n    \"Qui trovi il negozio\": \"Find the shop here\",\r\n    \"Crea con\": \"Create with\",\r\n    \"Passa in negozio o scrivi al fiorista\": \"Visit the shop or message the florist\",\r\n    \"Recensioni esterne su Google\": \"Reviews on Google\",\r\n    \"Consegna domani\": \"Delivery tomorrow\",\r\n    \"Prossima consegna\": \"Next delivery\",\r\n    \"Bouquet su misura\": \"Custom bouquet\",\r\n    \"Bouquet del negozio\": \"Shop bouquets\",\r\n    \"Disponibili dal fiorista\": \"Available from the florist\",\r\n    \"Azioni del negozio\": \"Shop actions\",\r\n    \"Esci dal negozio\": \"Leave the shop\",\r\n    \"Vai ai bouquet\": \"Browse bouquets\",\r\n    \"Apri informazioni sul fiorista\": \"Open florist information\",\r\n    \"Partner verificato da Florame. Mostra dettagli\": \"Partner verified by florame.ai. Show details\",\r\n    \"Informazioni rapide del fiorista\": \"Florist at a glance\",\r\n    \"Abbiamo verificato l\u2019identit\u00E0 e l\u2019attivazione di questo fiorista. Disponibilit\u00E0 e promozioni restano aggiornate dal negozio.\": \"We\u2019ve verified this florist\u2019s identity and activation. The shop keeps availability and offers up to date.\",\r\n    \"Informazioni aggiornate del negozio\": \"Latest shop information\",\r\n    \"Dove e quando ricevere i fiori\": \"Where and when to receive your flowers\",\r\n    \"Scegli la consegna\": \"Choose delivery\",\r\n    \"Indirizzo, giorno e fascia oraria\": \"Address, day and time window\",\r\n    \"In evidenza dal fiorista\": \"Featured by the florist\",\r\n    \"Il momento del fiorista, 1 di 3\": \"From the florist, 1 of 3\",\r\n    \"Consegna, 2 di 3\": \"Delivery, 2 of 3\",\r\n    \"Crea il tuo bouquet, 3 di 3\": \"Create your bouquet, 3 of 3\",\r\n    \"Creato per la tua occasione\": \"Made for your occasion\",\r\n    \"Mostra il momento del fiorista, 1 di 3\": \"Show the florist\u2019s feature, 1 of 3\",\r\n    \"Mostra la consegna, 2 di 3\": \"Show delivery, 2 of 3\",\r\n    \"Mostra crea il tuo bouquet, 3 di 3\": \"Show bouquet creation, 3 of 3\",\r\n    \"Invia messaggio\": \"Send a message\",\r\n    \"Sito del fiorista\": \"Florist\u2019s website\",\r\n    \"Dove consegna\": \"Delivery areas\",\r\n    \"Cliente Google\": \"Google reviewer\",\r\n    \"Orari del negozio\": \"Shop opening hours\",\r\n    \"Quando puoi trovarlo aperto\": \"When the shop is open\",\r\n    \"Quando consegna\": \"Delivery hours\",\r\n    \"Fasce disponibili per gli ordini\": \"Available order time windows\",\r\n    \"Consegna su richiesta\": \"Delivery on request\",\r\n    \"Come funziona la richiesta\": \"How requests work\",\r\n    \"Informazioni del negozio\": \"Shop information\",\r\n    \"Apri le informazioni del negozio\": \"Open shop information\",\r\n    \"Orari negozio\": \"Shop opening hours\",\r\n    \"Info negozio\": \"Shop information\",\r\n    \"Su richiesta\": \"On request\",\r\n    \"Chiudi le informazioni del negozio\": \"Close shop information\",\r\n    \"Fiorista salvato\": \"Florist saved\",\r\n    \"Fiorista rimosso\": \"Florist removed\",\r\n    \"Disponibilit\u00E0 appena aggiornata\": \"Availability just updated\",\r\n    \"Il fiorista ha aggiornato i fiori disponibili.\": \"The florist has updated their available flowers.\",\r\n    \"Chiudi avviso\": \"Dismiss notice\",\r\n    \"Carrello svuotato. Ora puoi acquistare da questo fiorista.\": \"Cart cleared. You can now order from this florist.\",\r\n    \"Cambia fiorista\": \"Change florist\",\r\n    \"Svuoto il carrello...\": \"Clearing your cart\u2026\",\r\n    \"Il carrello \u00E8 vuoto, ma il cambio fiorista non \u00E8 ancora completo. Riprova.\": \"Your cart is empty, but we couldn\u2019t finish changing the florist. Try again.\",\r\n    \"Disponibilit\u00E0 non ancora aggiornata\": \"Availability has not been updated yet\",\r\n    \"Ultimo aggiornamento: poco fa\": \"Last updated just now\",\r\n    \"Ultimo aggiornamento:\": \"Last updated:\",\r\n    \"Ultimo aggiornamento: ieri\": \"Last updated yesterday\",\r\n    \"Il carrello \u00E8 dell\u2019altro fiorista\": \"Your cart is linked to the other florist\",\r\n    \"Scegli per il ritiro:\": \"Choose a pickup shop:\",\r\n    \"Scegli questo negozio\": \"Choose this shop\",\r\n    \"Scegli e aggiungi al carrello\": \"Choose and add to cart\",\r\n    \"Il tuo fiorista\": \"Your florist\",\r\n    \"La tua scelta\": \"Your choice\",\r\n    \"La richiesta \u00E8 seguita da Florame\": \"florame.ai handles your request\",\r\n    \"Il negozio per il tuo bouquet\": \"The shop for your bouquet\",\r\n    \"Scegli giorno e fascia\": \"Choose a day and time window\",\r\n    \"Esplora negozio\": \"Explore shop\",\r\n    \"Come funziona la richiesta?\": \"How does a request work?\",\r\n    \"Florame cerca un fiorista in zona. La richiesta \u00E8 confermata solo quando viene accettata. Trovi gli aggiornamenti nei Messaggi.\": \"florame.ai looks for a florist in the area. Your request is confirmed only when accepted. Follow updates in Messages.\",\r\n    \"Hai gi\u00E0 un bouquet nel carrello\": \"You already have a bouquet in your cart\",\r\n    \"Vuoi un altro fiorista?\": \"Would you like a different florist?\",\r\n    \"Il carrello resta legato a questo negozio. Puoi esplorare gli altri; per cambiare, completa l\u2019ordine o rimuovi prima i bouquet dal carrello.\": \"Your cart stays linked to this shop. You can browse others; to change florist, complete your order or remove the bouquets from your cart first.\",\r\n    \"Confronta chi pu\u00F2 prepararlo nella tua zona.\": \"Compare florists who can prepare it in your area.\",\r\n    \"Manteniamo la composizione e ricontrolliamo fiori, prezzi e fasce di consegna del nuovo negozio. La scelta \u00E8 completa solo dopo questa verifica.\": \"We keep your composition and check the new shop\u2019s flowers, prices and delivery windows. Your selection is complete once these checks pass.\",\r\n    \"Citt\u00E0, CAP, via o fiorista\": \"Town, postal code, street or florist\",\r\n    \"Mostra tutti i fioristi\": \"Show all florists\",\r\n    \"Carico gli orari\u2026\": \"Loading opening hours\u2026\",\r\n    \"Orari temporaneamente non disponibili. Chiama il negozio o riapri per riprovare.\": \"Opening hours are temporarily unavailable. Call the shop or reopen this panel to try again.\",\r\n    \"Altri fioristi\": \"Other florists\",\r\n    \"Cerco fioristi\u2026\": \"Finding florists\u2026\",\r\n    \"Nessun negozio trovato. Prova una citt\u00E0 o una zona vicina.\": \"No shops found. Try a nearby town or area.\",\r\n    \"Non riusciamo a caricare i negozi.\": \"We couldn\u2019t load the shops.\",\r\n    \"Non riesco a trovare questa zona. Riprova la ricerca.\": \"We couldn\u2019t find this area. Try searching again.\",\r\n    \"Scegli il luogo tra i suggerimenti.\": \"Choose a location from the suggestions.\",\r\n    \"Verifico il negozio\u2026\": \"Checking the shop\u2026\",\r\n    \"Imposto il ritiro\u2026\": \"Setting up pickup\u2026\",\r\n    \"Apri un negozio che consegna al nuovo indirizzo. Il carrello attuale resta salvato con il suo fiorista; i nuovi bouquet saranno verificati con il nuovo negozio.\": \"Open a shop that delivers to the new address. Your current cart stays saved with its florist; new bouquets will be checked with the new shop.\",\r\n    \"Zona di ricerca\": \"Search area\",\r\n    \"Esplora gli altri negozi. I bouquet nel carrello restano con il fiorista gi\u00E0 scelto.\": \"Explore other shops. The bouquets in your cart stay with your selected florist.\",\r\n    \"Non riesco ad aprire Dove e quando. Riprova.\": \"We couldn\u2019t open Where and when. Try again.\",\r\n    \"Il bouquet va aggiornato\": \"Update your bouquet\",\r\n    \"Nessun negozio con ritiro trovato in questa zona. Prova un altro CAP.\": \"No pickup shops found in this area. Try another postal code.\",\r\n    \"Apro il negozio per il ritiro\u2026\": \"Opening the pickup shop\u2026\",\r\n    \"Verifico fiori, prezzi e consegna\u2026\": \"Checking flowers, prices and delivery\u2026\",\r\n    \"Non riusciamo a caricare i negozi. Riprova tra poco.\": \"We couldn\u2019t load the shops. Try again shortly.\",\r\n    \"nelle ultime 24 ore\": \"in the last 24 hours\",\r\n    \"Stories dei fioristi Florame\": \"florame.ai florist Stories\",\r\n    \"Attivit\u00E0 Florame\": \"florame.ai activity\",\r\n    \"Chiudi le Stories\": \"Close Stories\",\r\n    \"Ordina ora: apri il prodotto\": \"Order now: open the product\",\r\n    \"Story precedente\": \"Previous Story\",\r\n    \"Attiva audio\": \"Turn sound on\",\r\n    \"Logo del fiorista\": \"Florist\u2019s logo\",\r\n    \"Novit\u00E0 dal fiorista\": \"Florist updates\",\r\n    \"Scopri cosa sta succedendo in negozio.\": \"See what\u2019s happening in the shop.\",\r\n    \"questo fiorista\": \"this florist\",\r\n    \"Attivit\u00E0\": \"Activity\",\r\n    \"I vantaggi del tuo account\": \"Your account benefits\",\r\n    \"I tuoi ordini\": \"Your orders\",\r\n    \"Segui ogni bouquet, passo dopo passo.\": \"Follow every bouquet, step by step.\",\r\n    \"Ritrova i bouquet che ami.\": \"Find the bouquets you love.\",\r\n    \"Tutti i bouquet creati da te, insieme.\": \"All your creations in one place.\",\r\n    \"I dati di fatturazione gi\u00E0 pronti.\": \"Your billing details, ready to use.\",\r\n    \"Accedi di nuovo per verificare l\u2019invio.\": \"Sign in again to check whether your message was sent.\",\r\n    \"Questa conversazione non accetta risposte.\": \"You can\u2019t reply to this conversation.\",\r\n    \"La conversazione \u00E8 cambiata. Verifica con Florame.\": \"This conversation has changed. Check with florame.ai.\",\r\n    \"La conversazione non \u00E8 pi\u00F9 disponibile.\": \"This conversation is no longer available.\",\r\n    \"Sei offline. Torna online per verificare questo invio.\": \"You\u2019re offline. Reconnect to check whether this message was sent.\",\r\n    \"Puoi riprovare tra\": \"You can try again in\",\r\n    \"nuovo messaggio\": \"new message\",\r\n    \"nuovi messaggi\": \"new messages\",\r\n    \"Nuova proposta del fiorista\": \"A new suggestion from your florist\",\r\n    \"Prezzo del bouquet\": \"Bouquet price\",\r\n    \"Foto non disponibile\": \"Photo unavailable\",\r\n    \"Disponibile fino al\": \"Available until\",\r\n    \"steli\": \"stems\",\r\n    \"variet\u00E0\": \"varieties\",\r\n    \"Il bouquet in dettaglio\": \"Bouquet details\",\r\n    \"Rivedi consegna e totale prima di continuare.\": \"Review delivery and the total before continuing.\",\r\n    \"Non accetto\": \"Decline\",\r\n    \"Rivedi e continua\": \"Review and continue\",\r\n    \"Apri il nuovo ordine\": \"Open the new order\",\r\n    \"Troviamo una soluzione \u00B7 Assistenza\": \"Let\u2019s find a solution \u00B7 Support\",\r\n    \"Il tuo vantaggio\": \"Your offer\",\r\n    \"Il rimborso del pagamento iniziale \u00E8 stato disposto sul metodo originale. I tempi di accredito dipendono dal gestore del pagamento.\": \"A refund of your original payment has been issued to the same payment method. Processing times depend on your payment provider.\",\r\n    \"Il pagamento iniziale \u00E8 stato annullato. I tempi di sblocco dell\u2019importo dipendono dal gestore del pagamento.\": \"Your original payment has been cancelled. The time needed to release the amount depends on your payment provider.\",\r\n    \"Il pagamento iniziale risulta rimborsato in parte. Consulta gli importi nei dettagli dell\u2019ordine.\": \"Your original payment has been partially refunded. Check the amounts in your order details.\",\r\n    \"Abbiamo avviato l\u2019annullamento del pagamento iniziale. L\u2019importo viene sbloccato o rimborsato, secondo il metodo usato.\": \"We\u2019ve started cancelling your original payment. The amount will be released or refunded, depending on the payment method.\",\r\n    \"Preparo il riepilogo\u2026\": \"Preparing your summary\u2026\",\r\n    \"Per continuare con la proposta sostituiremo i prodotti nel carrello attuale. Potrai rivedere consegna e totale prima del pagamento.\": \"To continue with this suggestion, we\u2019ll replace the items in your current cart. You can review delivery and the total before paying.\",\r\n    \"Preparo il tuo carrello\u2026\": \"Preparing your cart\u2026\",\r\n    \"Questa proposta \u00E8 scaduta.\": \"This suggestion has expired.\",\r\n    \"Il bouquet della proposta \u00E8 cambiato. Scrivi qui per ricevere una proposta aggiornata.\": \"The suggested bouquet has changed. Send a message here to request an updated suggestion.\",\r\n    \"Non siamo riusciti a preparare la proposta. Il carrello precedente \u00E8 stato ripristinato: puoi riprovare.\": \"We couldn\u2019t prepare this suggestion. Your previous cart has been restored; you can try again.\",\r\n    \"Non siamo riusciti a completare il cambio. Apri il carrello e controlla i prodotti prima di riprovare.\": \"We couldn\u2019t finish updating your cart. Open it and check the items before trying again.\",\r\n    \"Non riusciamo ad aprire il riepilogo. Riprova tra poco.\": \"We couldn\u2019t open the summary. Try again shortly.\",\r\n    \"Controlla il carrello\": \"Check your cart\",\r\n    \"Vuoi rifiutare questa proposta? Non avvierai un nuovo pagamento.\": \"Decline this suggestion? No new payment will be started.\",\r\n    \"Non accetto la proposta\": \"Decline the suggestion\",\r\n    \"Non riesco a registrare la scelta. Riprova.\": \"We couldn\u2019t save your choice. Try again.\",\r\n    \"Aggiornamento\": \"Update\",\r\n    \"Richiesta\": \"Request\",\r\n    \"Ordine\": \"Order\",\r\n    \"Conversazione con il fiorista\": \"Conversation with the florist\",\r\n    \"La preparazione \u00E8 terminata \u00B7 segui la consegna nei dettagli\": \"Preparation complete \u00B7 follow delivery in the details\",\r\n    \"Consulta nei dettagli lo stato del ritiro o della consegna\": \"Check pickup or delivery status in the details\",\r\n    \"Ordine sostituito\": \"Order replaced\",\r\n    \"Questa \u00E8 la conversazione dell\u2019ordine iniziale\": \"This conversation is for your original order\",\r\n    \"Richiesta al fiorista\": \"Request to the florist\",\r\n    \"Stato aggiornato da Florame\": \"Status updated by florame.ai\",\r\n    \"Richiesta accettata\": \"Request accepted\",\r\n    \"Controlla lo stato della consegna nei dettagli\": \"Check delivery status in the details\",\r\n    \"Consulta consegna e assistenza nei dettagli\": \"Find delivery and support information in the details\",\r\n    \"Ordine iniziale sostituito\": \"Original order replaced\",\r\n    \"La nuova proposta ha un ordine dedicato\": \"The new suggestion has its own order\",\r\n    \"Segui il nuovo ordine dai tuoi ordini\": \"Follow the new order in Your orders\",\r\n    \"Ordine annullato\": \"Order cancelled\",\r\n    \"Preparazione e consegna interrotte\": \"Preparation and delivery stopped\",\r\n    \"Controlla nei dettagli lo stato del pagamento\": \"Check payment status in the details\",\r\n    \"Controlla il nuovo bouquet e il prezzo\": \"Check the new bouquet and price\",\r\n    \"Rivedi consegna e totale\": \"Review delivery and the total\",\r\n    \"Continua al nuovo checkout solo se accetti\": \"Continue to the new checkout only if you accept\",\r\n    \"Nessun nuovo addebito\": \"No new charge\",\r\n    \"Scrivici per valutare un\u2019altra soluzione\": \"Message us to discuss another solution\",\r\n    \"Pagamento acquisito\": \"Payment captured\",\r\n    \"Il fiorista prepara il tuo ordine\": \"The florist is preparing your order\",\r\n    \"Richiesta conclusa\": \"Request closed\",\r\n    \"I tempi dipendono dal metodo di pagamento\": \"Timing depends on your payment method\",\r\n    \"Pagamento in verifica\": \"Checking payment\",\r\n    \"Non inviare una seconda richiesta\": \"Please don\u2019t send a second request\",\r\n    \"Richiesta inviata\": \"Request sent\",\r\n    \"Il fiorista risponde qui\": \"The florist will reply here\",\r\n    \"Controlla qui la conferma dell\u2019ordine\": \"Check here for order confirmation\",\r\n    \"Accedi per scrivere ai fioristi e seguire richieste e ordini.\": \"Sign in to message florists and follow your requests and orders.\",\r\n    \"Accedi o registrati\": \"Sign in or create an account\",\r\n    \"Carico\u2026\": \"Loading\u2026\",\r\n    \"Non riusciamo a caricare i messaggi precedenti. Riprova.\": \"We couldn\u2019t load earlier messages. Try again.\",\r\n    \"Messaggi precedenti\": \"Earlier messages\",\r\n    \"Nessuna conversazione trovata\": \"No conversations found\",\r\n    \"Segui qui la richiesta al fiorista\": \"Follow your request to the florist here\",\r\n    \"Apri la conversazione\": \"Open conversation\",\r\n    \"Pagamento da confermare\": \"Payment awaiting confirmation\",\r\n    \"Disponibilit\u00E0 confermata dal fiorista\": \"Availability confirmed by the florist\",\r\n    \"Fiori verificati nello stock\": \"Flowers checked against the florist\u2019s stock\",\r\n    \"Disponibilit\u00E0 da confermare\": \"Availability to be confirmed\",\r\n    \"Apri ordine o richiesta\": \"Open order or request\",\r\n    \"Bouquet richiesto\": \"Requested bouquet\",\r\n    \"Il bouquet richiesto\": \"Your requested bouquet\",\r\n    \"Bouquet su richiesta\": \"Bouquet on request\",\r\n    \"Totale ordine\": \"Order total\",\r\n    \"La composizione non \u00E8 presente nel riepilogo di questa richiesta. Puoi chiederla al fiorista nella chat.\": \"The composition is not included in this request summary. Ask the florist in the chat.\",\r\n    \"Confezione e decorazioni non sono specificate in questa richiesta. Concordale con il fiorista nella chat.\": \"Wrapping and decorations are not specified in this request. Discuss them with the florist in the chat.\",\r\n    \"Il tuo bouquet\": \"Your bouquet\",\r\n    \"Vorrei parlare di composizione e decorazioni del bouquet richiesto.\": \"I\u2019d like to discuss the composition and decorations of my requested bouquet.\",\r\n    \"Pagamento\": \"Payment\",\r\n    \"Aggiornato\": \"Updated\",\r\n    \"Pagamento aggiornato\": \"Payment updated\",\r\n    \"Puoi ancora chiedere una modifica\": \"You can still request a change\",\r\n    \"Prima di modificare, scrivi al fiorista\": \"Message the florist before making changes\",\r\n    \"Non inviato\": \"Not sent\",\r\n    \"Verifica e riprova\": \"Check and try again\",\r\n    \"Scrivi il primo messaggio: il fiorista lo vedr\u00E0 nel suo Hub.\": \"Send the first message: the florist will see it in hub.florame.ai.\",\r\n    \"Dettagli fiorista\": \"Florist details\",\r\n    \"Pagamenti, modifiche e rimborsi restano sempre gestiti da Florame. In chat puoi concordare preferenze e dettagli del bouquet.\": \"florame.ai handles payments, changes and refunds. Use the chat to discuss bouquet preferences and details.\",\r\n    \"Pagina del fiorista\": \"Florist\u2019s page\",\r\n    \"Foto, bouquet e disponibilit\u00E0\": \"Photos, bouquets and availability\",\r\n    \"Apri in una nuova scheda\": \"Open in a new tab\",\r\n    \"Vorrei chiedere una modifica a data, fascia o indirizzo di consegna. La preferenza attuale deve restare valida finch\u00E9 non mi confermate la modifica.\": \"I\u2019d like to request a change to my delivery date, time window or address. Please keep the current details until you confirm the change.\",\r\n    \"Aggiornamento in pausa. I messaggi gi\u00E0 caricati restano qui.\": \"Updates paused. Your loaded messages are still here.\",\r\n    \"La chat non si \u00E8 aperta\": \"The chat couldn\u2019t be opened\",\r\n    \"La tua bozza \u00E8 al sicuro. Riproviamo?\": \"Your draft is safe. Try again?\",\r\n    \"Messaggi non disponibili\": \"Messages unavailable\",\r\n    \"Riprova tra poco. Le tue conversazioni restano salvate.\": \"Try again shortly. Your conversations are still saved.\",\r\n    \"Non siamo riusciti ad aggiornare i messaggi.\": \"We couldn\u2019t refresh your messages.\",\r\n    \"Non riusciamo ad aprire la conversazione con questo fiorista.\": \"We couldn\u2019t open the conversation with this florist.\",\r\n    \"Torna alla chat\": \"Back to chat\",\r\n    \"Pagamento da verificare\": \"Payment needs checking\",\r\n    \"Se vedi un addebito o non sai se l\u2019ordine \u00E8 confermato, contattaci prima di ripetere il pagamento.\": \"If you see a charge or aren\u2019t sure your order is confirmed, contact us before paying again.\",\r\n    \"Controlla lo stato dell\u2019ordine prima di ripetere il pagamento. Per chiarimenti, contatta Florame.\": \"Check your order status before paying again. Contact florame.ai if you need clarification.\",\r\n    \"Aiuto con il tuo ordine\": \"Help with your order\",\r\n    \"Per pagamenti, modifiche, consegne o rimborsi, scrivi al team Florame.\": \"Message the florame.ai team about payments, changes, delivery or refunds.\",\r\n    \"Qui non puoi rispondere. Per ricevere aiuto, apri la chat di assistenza Florame.\": \"You can\u2019t reply here. For help, open the florame.ai support chat.\",\r\n    \"Fiorista o assistenza?\": \"Florist or support?\",\r\n    \"Per fiori e composizione puoi scrivere al fiorista. Per acquisti o problemi con il sito, contatta Florame.\": \"Message the florist about flowers and composition. Contact florame.ai about purchases or website issues.\",\r\n    \"Per ordini, pagamenti, consegne o aiuto con il sito, scrivi al team Florame.\": \"Message the florame.ai team for help with orders, payments, delivery or the website.\",\r\n    \"Ordine:\": \"Order:\",\r\n    \"Riferimento ordine:\": \"Order reference:\",\r\n    \"Fiorista:\": \"Florist:\",\r\n    \"Bouquet:\": \"Bouquet:\",\r\n    \"Apri chat Florame\": \"Open florame.ai support chat\",\r\n    \"Si apre una chat dedicata con l\u2019assistenza, separata dai messaggi al fiorista.\": \"This opens a support chat, separate from your messages to the florist.\",\r\n    \"Vedi dettagli dell\u2019ordine\": \"View order details\",\r\n    \"Torna alla chat del fiorista\": \"Back to the florist\u2019s chat\",\r\n    \"La chat di assistenza non riceve automaticamente questi dettagli. Puoi copiarli e incollarli; nell\u2019email sono gi\u00E0 preparati.\": \"These details aren\u2019t shared with support automatically. Copy and paste them into the chat, or use the email with the details already included.\",\r\n    \"Riprova ad aprire la chat\": \"Try opening the chat again\",\r\n    \"Copia non disponibile: seleziona e copia i dettagli qui sopra.\": \"Copying is unavailable. Select and copy the details above.\",\r\n    \"Si apre la tua app email. Il messaggio sar\u00E0 inviato solo quando lo invierai tu.\": \"This opens your email app. The message is sent only when you send it.\",\r\n    \"Si apre l\u2019app per telefonare.\": \"This opens your phone app.\",\r\n    \"Sei offline. Riconnettiti per la chat oppure usa il numero di telefono.\": \"You\u2019re offline. Reconnect to use the chat or call us instead.\",\r\n    \"Puoi restare qui oppure scegliere email o telefono.\": \"You can stay here or choose email or phone.\",\r\n    \"La chat non si \u00E8 aperta. Riprova oppure scegli email o telefono qui sotto.\": \"The chat couldn\u2019t be opened. Try again or choose email or phone below.\",\r\n    \"Non riusciamo ad aprire la chat. Riprova oppure scegli email o telefono.\": \"We couldn\u2019t open the chat. Try again or choose email or phone.\",\r\n    \"Offerte dai tuoi fioristi\": \"Offers from your florists\",\r\n    \"Di nuovo disponibile\": \"Back in stock\",\r\n    \"Quando torna un bouquet o un fiore salvato.\": \"When a saved bouquet or flower is available again.\",\r\n    \"Spunti utili per occasioni e stagioni.\": \"Ideas for special occasions and the seasons.\",\r\n    \"Un avviso discreto prima delle date importanti.\": \"A gentle reminder before important dates.\",\r\n    \"Verifica prima l\u2019invio: il messaggio potrebbe essere gi\u00E0 arrivato.\": \"Check first: your message may already have arrived.\",\r\n    \"Conserva o invia la bozza attuale prima di modificare questo messaggio.\": \"Save or send your current draft before editing this message.\",\r\n    \"Sei offline. I messaggi e le bozze restano qui.\": \"You\u2019re offline. Your messages and drafts are still here.\",\r\n    \"Vai ai messaggi\": \"Go to Messages\",\r\n    \"Dettagli non ancora disponibili\": \"Details not yet available\",\r\n    \"L\u2019ordine resta al sicuro. Apri Messaggi per vedere gli ultimi aggiornamenti.\": \"Your order is safe. Open Messages for the latest updates.\",\r\n    \"Azioni ordine\": \"Order actions\",\r\n    \"Consegna non modificabile direttamente\": \"Delivery can\u2019t be changed directly\",\r\n    \"Chiedi una modifica\": \"Request a change\",\r\n    \"La chat non \u00E8 disponibile ora. Scrivi a assistenza@florame.ai.\": \"Chat is currently unavailable. Email assistenza@florame.ai.\",\r\n    \"Ordine non indicato\": \"No order specified\",\r\n    \"Apri un ordine dai Messaggi Florame per vedere tutti i dettagli.\": \"Open an order from florame.ai Messages to see its details.\",\r\n    \"Accedi per vedere questo ordine\": \"Sign in to view this order\",\r\n    \"Pagamento, indirizzo e conversazione sono visibili soltanto a te.\": \"Only you can see your payment, address and conversation.\",\r\n    \"Ordine non trovato\": \"Order not found\",\r\n    \"Controlla di aver aperto il link dallo stesso account usato per l\u2019ordine.\": \"Check that you\u2019re signed in with the account used for this order.\",\r\n    \"Non riesco ad aprire l\u2019ordine\": \"We couldn\u2019t open your order\",\r\n    \"I dati non sono andati persi. Riprova dai Messaggi tra poco.\": \"Your details haven\u2019t been lost. Try again from Messages shortly.\",\r\n    \"Cerca nei messaggi\": \"Search messages\",\r\n    \"Preferenze messaggi\": \"Message preferences\",\r\n    \"Cerca una conversazione\": \"Search conversations\",\r\n    \"Caricamento messaggi\": \"Loading messages\",\r\n    \"Torna alle conversazioni\": \"Back to conversations\",\r\n    \"Mostra il bouquet richiesto nella conversazione\": \"Show the requested bouquet in the conversation\",\r\n    \"Messaggi della conversazione\": \"Conversation messages\",\r\n    \"Chiudi preferenze\": \"Close preferences\",\r\n    \"Chiudi dettagli fiorista\": \"Close florist details\",\r\n    \"Chiudi dettagli ordine\": \"Close order details\",\r\n    \"Chiudi foto\": \"Close photo\",\r\n    \"Il tuo spazio\": \"Your space\",\r\n    \"Hai una domanda per questo fiorista?\": \"Have a question for this florist?\",\r\n    \"Apri una conversazione dedicata.\": \"Start a conversation with them.\",\r\n    \"Ordini e richieste\": \"Orders and requests\",\r\n    \"I tuoi fiori, una conversazione alla volta\": \"Your flowers, one conversation at a time\",\r\n    \"Scegli un messaggio per vedere richieste, ordini e aggiornamenti.\": \"Choose a conversation to see requests, orders and updates.\",\r\n    \"Ultimi messaggi\": \"Latest messages\",\r\n    \"Canale informativo Florame \u00B7 non \u00E8 possibile rispondere\": \"florame.ai updates \u00B7 replies unavailable\",\r\n    \"Serve aiuto? Apri Assistenza\": \"Need help? Open Support\",\r\n    \"Scegli cosa ricevere\": \"Choose your notifications\",\r\n    \"Ordini e sicurezza arrivano sempre. Offerte e idee solo se le vuoi tu.\": \"Order and security updates are always sent. Offers and ideas are optional.\",\r\n    \"Salva preferenze\": \"Save preferences\",\r\n    \"Ordine Florame\": \"florame.ai order\",\r\n    \"Scrivi al fiorista\": \"Message the florist\",\r\n    \"La tua composizione\": \"Your composition\",\r\n    \"Bouquet Florame\": \"florame.ai bouquet\",\r\n    \"La foto non si \u00E8 caricata. Chiudi e riaprila per riprovare.\": \"The photo couldn\u2019t be loaded. Close it and reopen to try again.\",\r\n    \"Torna ai messaggi\": \"Back to Messages\",\r\n    \"Ordine e richiesta\": \"Order and request\",\r\n    \"A che punto siamo\": \"Order progress\",\r\n    \"Conversazioni\": \"Conversations\",\r\n    \"Codice\": \"Code\",\r\n    \"Valido fino al\": \"Valid until\",\r\n    \"Risposta entro\": \"Reply by\",\r\n    \"La prima esperienza pu\u00F2 essere la tua.\": \"Be the first to share your experience.\",\r\n    \"La prima esperienza pu\u00F2 essere la tua\": \"Be the first to share your experience\",\r\n    \"recensioni pubblicate\": \"published reviews\",\r\n    \"Video della recensione\": \"Review video\",\r\n    \"Foto della recensione\": \"Review photo\",\r\n    \"Bouquet acquistato\": \"Purchased bouquet\",\r\n    \"Apri il prodotto\": \"Open product\",\r\n    \"Non autentica\": \"Not authentic\",\r\n    \"Cliente Florame\": \"florame.ai customer\",\r\n    \"Nessuna recensione di partner con questi filtri.\": \"No partner reviews match these filters.\",\r\n    \"Le esperienze professionali vengono inviate dal negozio autenticato in hub.florame.ai.\": \"Professional reviews are submitted by shops signed in to hub.florame.ai.\",\r\n    \"Apri Hub\": \"Open hub.florame.ai\",\r\n    \"Nessuna recensione con questi filtri\": \"No reviews match these filters\",\r\n    \"Azzera i filtri per leggere tutte le esperienze.\": \"Clear the filters to read all reviews.\",\r\n    \"Quando arriver\u00E0 la prima esperienza verificata, comparir\u00E0 qui.\": \"The first verified review will appear here.\",\r\n    \"Mostra tutte le recensioni\": \"Show all reviews\",\r\n    \"Scrivi la prima recensione\": \"Write the first review\",\r\n    \"Punteggio momentaneamente non disponibile\": \"Rating temporarily unavailable\",\r\n    \"Il caricamento non \u00E8 riuscito. Riprova tra poco.\": \"Loading failed. Try again shortly.\",\r\n    \"Salva le modifiche\": \"Save changes\",\r\n    \"Periodo di modifica terminato\": \"The editing period has ended\",\r\n    \"Anteprima allegato\": \"Attachment preview\",\r\n    \"Ordine riconosciuto: la recensione avr\u00E0 il badge \u201CAcquisto verificato\u201D.\": \"Order recognised: your review will have the Verified purchase badge.\",\r\n    \"Il vecchio invito non \u00E8 pi\u00F9 utilizzabile. Puoi comunque verificare la tua email.\": \"Your previous invitation has expired. You can still verify your email.\",\r\n    \"Grazie, la segnalazione \u00E8 stata inviata.\": \"Thank you. Your report has been sent.\",\r\n    \"Attendi il caricamento degli allegati.\": \"Wait for your attachments to finish uploading.\",\r\n    \"Scegli da una a cinque stelle.\": \"Choose a rating from one to five stars.\",\r\n    \"La recensione \u00E8 online. Potrai correggerla per sette giorni.\": \"Your review is published. You can edit it for seven days.\",\r\n    \"La recensione \u00E8 al sicuro e verr\u00E0 pubblicata dopo il controllo privacy.\": \"Your review is saved and will be published after a privacy check.\",\r\n    \"Vuoi ritirare la recensione? Non sar\u00E0 pi\u00F9 visibile.\": \"Withdraw your review? It will no longer be visible.\",\r\n    \"La recensione \u00E8 stata ritirata e gli allegati sono stati rimossi.\": \"Your review has been withdrawn and its attachments removed.\",\r\n    \"Come funzionano le recensioni\": \"How reviews work\",\r\n    \"Caricamento valutazione\": \"Loading rating\",\r\n    \"Nessuna valutazione\": \"No ratings yet\",\r\n    \"Autori delle recensioni\": \"Review authors\",\r\n    \"Filtra per numero di stelle\": \"Filter by star rating\",\r\n    \"Riassumi la tua esperienza\": \"Summarise your experience\",\r\n    \"Crea un bouquet\": \"Create a bouquet\",\r\n    \"Un bouquet, un pensiero. La vostra esperienza con florame.ai.\": \"A bouquet, a thoughtful gesture. Your experience with florame.ai.\",\r\n    \"Scrivi una recensione\": \"Write a review\",\r\n    \"Come verifichiamo le esperienze\": \"How we verify reviews\",\r\n    \"Le recensioni\": \"Reviews\",\r\n    \"Filtra le recensioni\": \"Filter reviews\",\r\n    \"Clienti\": \"Customers\",\r\n    \"Recensioni sulla piattaforma\": \"Platform reviews\",\r\n    \"Qui racconti la tua esperienza con\": \"Share your experience with\",\r\n    \". Per recensire un fiorista, visita la sua pagina: Trust Florame non somma i voti dei fioristi.\": \". To review a florist, visit their page. florame.ai platform ratings are separate from florist ratings.\",\r\n    \"Chi pu\u00F2 recensire Florame?\": \"Who can review florame.ai?\",\r\n    \"I clienti verificano l\u2019email; gli ordini riconosciuti ricevono il badge dedicato. I partner inviano la propria esperienza dal negozio autenticato in hub.florame.ai, con un elenco e un punteggio separati.\": \"Customers verify their email; recognised orders receive a dedicated badge. Partners submit reviews from their shop account in hub.florame.ai, with a separate list and rating.\",\r\n    \"S\u00EC. Interveniamo solo su dati personali, spam, abusi o contenuti illeciti.\": \"Yes. We only intervene for personal data, spam, abuse or unlawful content.\",\r\n    \"S\u00EC, per sette giorni. Puoi anche ritirarla.\": \"Yes, for seven days. You can also withdraw it.\",\r\n    \"La tua esperienza\": \"Your experience\",\r\n    \"Raccontaci com\u2019\u00E8 andata\": \"Tell us how it went\",\r\n    \"Verifica l\u2019email con un codice. Il tuo indirizzo resta privato.\": \"Verify your email with a code. Your address stays private.\",\r\n    \"Mandami il codice\": \"Send me a code\",\r\n    \"2 di 3 \u00B7 Controlla l\u2019email\": \"2 of 3 \u00B7 Check your email\",\r\n    \"Verifica e continua\": \"Verify and continue\",\r\n    \"Com\u2019\u00E8 andata con Florame?\": \"How was your experience with florame.ai?\",\r\n    \"Citt\u00E0\": \"Town or city\",\r\n    \"Racconta la tua esperienza\": \"Describe your experience\",\r\n    \"Qualit\u00E0\": \"Quality\",\r\n    \"Regalo\": \"Gift\",\r\n    \"Scegli file\": \"Choose files\",\r\n    \"Confermo che l\u2019esperienza \u00E8 reale e che posso pubblicare gli eventuali contenuti allegati.\": \"I confirm that this is a real experience and that I have the right to publish any attached content.\",\r\n    \"Grazie. Ora c\u2019\u00E8 anche la tua voce.\": \"Thank you for sharing your experience.\",\r\n    \"La recensione \u00E8 online.\": \"Your review is published.\",\r\n    \"Vedi le recensioni\": \"Read reviews\",\r\n    \"Florame\": \"florame.ai\",\r\n    \"Create a bouquet you imagine\": \"Create the bouquet you imagine\",\r\n    \"Scegli tra\": \"Choose from\",\r\n    \"Richiedi per\": \"Request for\",\r\n    \"fiore\": \"flower\",\r\n    \"Ti avvisiamo quando torna disponibile\": \"Get notified when it\u2019s available again\",\r\n    \"Inserisci la tua email e ti scriveremo non appena il bouquet torna acquistabile.\": \"Enter your email and we\u2019ll let you know when you can order this bouquet again.\",\r\n    \"Controllo disponibilit\u00E0\u2026\": \"Checking availability\u2026\",\r\n    \"Contiene fiori segnati fuori stagione. Per la data scelta valgono la disponibilit\u00E0 e la proposta mostrate dal fiorista.\": \"It contains flowers marked out of season. For your selected date, the florist\u2019s availability and suggestion apply.\",\r\n    \"Apro Crea\u2026\": \"Opening Create\u2026\",\r\n    \"Sto preparando la composizione da modificare\u2026\": \"Preparing the composition for editing\u2026\",\r\n    \"Non riesco ad aprire Crea in questo momento. Riprova.\": \"We couldn\u2019t open Create. Try again.\",\r\n    \"Combo 0, moltiplicatore per 1\": \"Combo 0, multiplier 1\",\r\n    \"Chiudi classifica\": \"Close leaderboard\",\r\n    \"Vibrazione attiva\": \"Vibration on\",\r\n    \"Globale \u00B7 tutti i giocatori\": \"Global \u00B7 all players\",\r\n    \"Prepariamo il tuo nome floreale\u2026\": \"Preparing your floral name\u2026\",\r\n    \"Se accedi usiamo solo il tuo nome. Altrimenti ricevi un alias floreale.\": \"If you sign in, we use only your first name. Otherwise, you get a floral alias.\",\r\n    \"Navigazione contatti\": \"Contact navigation\",\r\n    \"Il team Florame\": \"The florame.ai team\",\r\n    \"Siamo qui per te.\": \"We\u2019re here for you.\",\r\n    \"Una domanda, un\u2019idea, un dubbio. Lascia i tuoi recapiti e ne parliamo insieme.\": \"A question, an idea, something on your mind. Leave your contact details and let\u2019s talk.\",\r\n    \"Tutto pronto\": \"All set\",\r\n    \"Grazie! Il team Florame ti ricontatter\u00E0 ai recapiti che hai indicato.\": \"Thank you! The florame.ai team will contact you using the details you provided.\",\r\n    \"Come ti ricontattiamo?\": \"How should we contact you?\",\r\n    \"Scegli quello che ti \u00E8 pi\u00F9 comodo.\": \"Choose what works best for you.\",\r\n    \"Controlla i dati e riprova.\": \"Check your details and try again.\",\r\n    \"Il tuo messaggio\": \"Your message\",\r\n    \"Invia richiesta\": \"Send request\",\r\n    \"Useremo i tuoi recapiti per rispondere alla richiesta.\": \"We\u2019ll use your contact details to respond to your request.\",\r\n    \"I tuoi dati\": \"Your details\",\r\n    \"Preferenza di contatto\": \"Contact preference\",\r\n    \"Chiamata\": \"Phone call\",\r\n    \"nome@esempio.it\": \"name@example.com\",\r\n    \"Indica il tuo nome.\": \"Enter your name.\",\r\n    \"Indica la tua email.\": \"Enter your email.\",\r\n    \"Controlla l\u2019indirizzo email.\": \"Check your email address.\",\r\n    \"Indica il numero a cui possiamo chiamarti.\": \"Enter the number we can call you on.\",\r\n    \"Controlla il numero, includendo il prefisso se necessario.\": \"Check the number, including the country code where needed.\",\r\n    \"Scopri come portare online la tua attivit\u00E0. Lascia i tuoi recapiti: ne parliamo insieme.\": \"Explore how to bring your business online. Leave your contact details and let\u2019s talk.\",\r\n    \"tuo negozio.\": \"your shop.\",\r\n    \"Nessun risultato. Scrivi via e numero civico.\": \"No results. Enter the street and street number.\",\r\n    \"Suggerimenti non disponibili. Riprova tra poco.\": \"Suggestions are unavailable. Try again shortly.\",\r\n    \"Seleziona un indirizzo dai suggerimenti Google prima di continuare.\": \"Select an address from the Google suggestions before continuing.\",\r\n    \"Indirizzo incompleto: scegli una via con numero civico dai suggerimenti.\": \"Incomplete address: choose a street with a street number from the suggestions.\",\r\n    \"Non siamo ancora attivi in questa zona.\": \"We\u2019re not operating in this area yet.\",\r\n    \"Email per avvisarti\": \"Email for notifications\",\r\n    \"Ti scriviamo solo quando apriamo la zona.\": \"We\u2019ll email you only when we start serving the area.\",\r\n    \"Errore verifica\": \"Check failed\",\r\n    \"Area non verificata\": \"Area not checked\",\r\n    \"Errore verifica. Riprova tra poco.\": \"The check failed. Try again shortly.\",\r\n    \"Nessuna creazione disponibile ora.\": \"No creations are available right now.\",\r\n    \"Community live non disponibile. Riprova tra poco.\": \"Community creations are unavailable. Try again shortly.\",\r\n    \"Non siamo riusciti a salvare. Riprova tra poco.\": \"We couldn\u2019t save your details. Try again shortly.\",\r\n    \"Verifichiamo che l\u2019account sia tuo\": \"Let\u2019s verify that this is your account\",\r\n    \"Accedi con l\u2019account che vuoi eliminare. Puoi farlo anche dal sito, senza installare l\u2019app.\": \"Sign in to the account you want to delete. You can use the website without installing the app.\",\r\n    \"Accedi per continuare\": \"Sign in to continue\",\r\n    \"Richiesta ricevuta\": \"Request received\",\r\n    \"La conferma \u00E8 stata inviata al tuo indirizzo email.\": \"Confirmation has been sent to your email address.\",\r\n    \"Il team si occuper\u00E0 della cancellazione. Non devi inviare altre richieste.\": \"The team will handle the deletion. You don\u2019t need to send another request.\",\r\n    \"Completamento previsto entro il\": \"Expected completion by\",\r\n    \"Conferma la tua richiesta\": \"Confirm your request\",\r\n    \"La richiesta riguarda tutto questo account. Dopo la cancellazione non potrai recuperare profilo, contenuti e preferenze personali.\": \"This request covers your entire account. After deletion, your profile, content and personal preferences cannot be recovered.\",\r\n    \"Voglio eliminare definitivamente il mio account Florame e i dati associati, salvo quelli da conservare per legge.\": \"I want to permanently delete my florame.ai account and associated data, except data that must be retained by law.\",\r\n    \"Non riesco a verificare l\u2019account. Riprova tra poco.\": \"We couldn\u2019t verify your account. Try again shortly.\",\r\n    \"Invio la richiesta\u2026\": \"Sending your request\u2026\",\r\n    \"L\u2019account \u00E8 cambiato. Controlla l\u2019email e conferma di nuovo.\": \"The account has changed. Check the email and confirm again.\",\r\n    \"Verifica di nuovo l\u2019account e conferma la richiesta.\": \"Verify your account again and confirm the request.\",\r\n    \"Non ho ricevuto conferma dell\u2019invio. Riprova: un eventuale invio gi\u00E0 riuscito non creer\u00E0 duplicati.\": \"We haven\u2019t received confirmation that your request was sent. Try again; if it already succeeded, no duplicate will be created.\",\r\n    \"Invia la richiesta qui, dall\u2019app o dal sito. Il nostro team eliminer\u00E0 definitivamente il tuo account Florame e i dati personali associati.\": \"Send your request here, from the app or website. Our team will permanently delete your florame.ai account and associated personal data.\",\r\n    \"Account, indirizzi salvati, preferenze, ricorrenze, creazioni salvate, contenuti personali e dati associati all\u2019uso di Florame, anche presso i nostri fornitori quando applicabile.\": \"Your account, saved addresses, preferences, occasions, saved creations, personal content and data associated with your use of florame.ai, including data held by our providers where applicable.\",\r\n    \"Cosa pu\u00F2 restare\": \"What may be retained\",\r\n    \"Solo i dati necessari per obblighi di legge, sicurezza o contestazioni. I documenti fiscali e dell\u2019ordine sono conservati normalmente per 10 anni, come indicato nella privacy. La cancellazione non annulla automaticamente ordini o rimborsi in corso.\": \"Only data needed for legal obligations, security or disputes. Tax and order records are normally retained for 10 years, as explained in the Privacy policy. Deletion does not automatically cancel pending orders or refunds.\",\r\n    \"Tempi e conferma\": \"Timing and confirmation\",\r\n    \"Gestiamo la richiesta manualmente, normalmente entro un mese. Ti scriveremo all\u2019email verificata dell\u2019account a cancellazione completata. Se serve una proroga prevista dalla legge, entro il primo mese ti comunicheremo motivo e nuovo termine.\": \"We handle requests manually, normally within one month. We\u2019ll email your verified account address when deletion is complete. If a lawful extension is needed, we\u2019ll explain the reason and new deadline within the first month.\",\r\n    \"Verifico il tuo accesso\u2026\": \"Checking your session\u2026\",\r\n    \"Non riesci ad accedere all\u2019account?\": \"Unable to access your account?\",\r\n    \"Attiva JavaScript per accedere e inviare la richiesta verificata. Se non puoi, scrivi a info@florame.ai.\": \"Enable JavaScript to sign in and submit a verified request. If you can\u2019t, email info@florame.ai.\",\r\n    \"Controlli carosello clienti\": \"Customer carousel controls\",\r\n    \"Modalit\u00E0 precedente\": \"Previous mode\",\r\n    \"Seleziona modalit\u00E0\": \"Choose a mode\",\r\n    \"Modalit\u00E0 successiva\": \"Next mode\",\r\n    \"Cosa succede dopo il contatto\": \"What happens after you contact us\",\r\n    \"Il tuo negozio,\": \"Your shop,\",\r\n    \"Cosa puoi fare?\": \"What can you do?\",\r\n    \"Pagina del negozio\": \"Shop page\",\r\n    \"Una pagina Florame con identit\u00E0, Vetrina, consegna, recensioni e prodotti del tuo negozio.\": \"A florame.ai page with your shop\u2019s identity, selection, delivery options, reviews and products.\",\r\n    \"Disponibilit\u00E0 semplice\": \"Availability made simple\",\r\n    \"Aggiorni fiori e colori a mano o con la voce. La telecamera AI sar\u00E0 un\u2019opzione, non un requisito.\": \"Update flowers and colours manually or by voice. The AI camera will be an option, not a requirement.\",\r\n    \"Richieste e Messaggi\": \"Requests and Messages\",\r\n    \"Accetti ci\u00F2 che puoi preparare, scrivi al cliente e segui pagamento e consegna dallo stesso Hub.\": \"Accept what you can prepare, message the customer and follow payment and delivery in the same hub.florame.ai workspace.\",\r\n    \"Strumenti per crescere\": \"Tools to grow\",\r\n    \"Prezzi, promozioni, extra, analytics e un manager Florame che conosce il tuo negozio.\": \"Pricing, promotions, extras, analytics and a florame.ai manager who knows your shop.\",\r\n    \"Conti chiari prima di pubblicare\": \"Clear figures before publishing\",\r\n    \"Puoi adattare il listino fiore + colore e creare promozioni separate. La quota Florame \u00E8 il 30% del totale prodotti realmente pagato, dopo gli sconti: l\u2019Hub mostra sempre l\u2019effetto prima della pubblicazione.\": \"Adjust prices by flower and colour and create separate promotions. The florame.ai share is 30% of the product total actually paid after discounts. hub.florame.ai shows the effect before you publish.\",\r\n    \"Listino del negozio\": \"Shop price list\",\r\n    \"Il cliente sceglie dove e quando, trova un bouquet oppure lo compone. Tu confermi ogni richiesta prima dell\u2019addebito.\": \"Customers choose where and when, then find or create a bouquet. You confirm each request before payment is captured.\",\r\n    \"Vede fioristi, bouquet, prezzi, disponibilit\u00E0 e promessa di consegna per l\u2019indirizzo e il momento scelti.\": \"They see florists, bouquets, prices, availability and delivery information for their chosen address and time.\",\r\n    \"Compone fiore per fiore oppure descrive l\u2019idea a Crea con AI, poi controlla e modifica ogni scelta nell\u2019editor.\": \"They compose flower by flower or describe their idea to Create with AI, then review and edit every choice.\",\r\n    \"Autorizza il totale e apre una conversazione. Tu accetti ci\u00F2 che puoi preparare; solo allora Florame acquisisce il pagamento.\": \"They authorise the total and start a conversation. You accept what you can prepare; only then does florame.ai capture payment.\",\r\n    \"Un Hub per il lavoro vero\": \"One workspace for your day-to-day work\",\r\n    \"richieste, clienti, disponibilit\u00E0, consegne, prezzi, promozioni, extra e risultati\": \"requests, customers, availability, deliveries, pricing, promotions, extras and results\",\r\n    \". Non serve acquistare hardware per iniziare.\": \". You don\u2019t need to buy hardware to get started.\",\r\n    \"Ricevi bouquet, extra, indirizzo, data, fascia e pagamento nello stesso posto.\": \"See the bouquet, extras, address, date, time window and payment in one place.\",\r\n    \"Le creazioni includono una\": \"Each creation includes a\",\r\n    \"composizione precisa\": \"precise composition\",\r\n    \"e una\": \"and a\",\r\n    \"Disponibilit\u00E0 senza ambiguit\u00E0\": \"Clear availability\",\r\n    \"Per oggi e domani il cliente usa soltanto lo stock che hai confermato. Per le date successive pu\u00F2 chiedere fiori da procurare, ma\": \"For today and tomorrow, customers use only your confirmed stock. For later dates, they may request flowers you need to source, but\",\r\n    \"decidi tu se accettare prima dell\u2019addebito\": \"you decide whether to accept before payment is captured\",\r\n    \"Importa il negozio\": \"Import your shop\",\r\n    \"Cerchi la tua attivit\u00E0 e Florame prepara\": \"Find your business and florame.ai prepares\",\r\n    \"nome, telefono, sito, indirizzo con civico e orari\": \"its name, phone number, website, full street address and opening hours\",\r\n    \". Controlli tutto prima di inviare la richiesta.\": \". Review everything before submitting your request.\",\r\n    \"Configura il lavoro\": \"Set up your operations\",\r\n    \"disponibilit\u00E0, orari, area di consegna, esclusioni e Vetrina\": \"availability, opening hours, delivery area, exclusions and your shop selection\",\r\n    \". Puoi aggiornare i fiori a mano o con la voce, da qualunque dispositivo.\": \". Update flowers manually or by voice, from any device.\",\r\n    \"Ricevi richieste\": \"Receive requests\",\r\n    \"Ogni ordine arriva come\": \"Each order arrives as a\",\r\n    \"richiesta completa\": \"complete request\",\r\n    \". Controlli composizione e consegna, accetti ci\u00F2 che puoi preparare e comunichi con il cliente in Messaggi.\": \". Check the composition and delivery, accept what you can prepare and talk to the customer in Messages.\",\r\n    \"Iscrizione gratuita\": \"Free registration\",\r\n    \"Parti con ci\u00F2 che hai gi\u00E0\": \"Start with what you already have\",\r\n    \"Non servono telecamera, stampante o tablet. Importi il negozio, completi le informazioni operative e ricevi un manager Florame dedicato.\": \"No camera, printer or tablet required. Import your shop, complete your operational details and get a dedicated florame.ai manager.\",\r\n    \"Nessun costo di ingresso\": \"No joining fee\",\r\n    \"La pagina e il Partner Hub vengono preparati durante l\u2019onboarding.\": \"Your page and hub.florame.ai workspace are prepared during onboarding.\",\r\n    \"Prima della pubblicazione controlli profilo, consegne, disponibilit\u00E0, prezzi e persone che possono accedere.\": \"Before publishing, review your profile, delivery settings, availability, prices and who can access your shop.\",\r\n    \"Nome, contatti, civico, sito e orari partono dalla tua attivit\u00E0 esistente.\": \"The name, contact details, street number, website and opening hours come from your existing business.\",\r\n    \"2. Confermi come lavori\": \"2. Confirm how you work\",\r\n    \"Disponibilit\u00E0, area, fasce, prezzi e Vetrina restano sempre modificabili nell\u2019Hub.\": \"You can always edit availability, delivery area, time windows, prices and your shop selection in hub.florame.ai.\",\r\n    \"3. Conosci il manager\": \"3. Meet your manager\",\r\n    \"Un referente Florame segue onboarding, domande e prossimi passi dentro Messaggi.\": \"A florame.ai contact guides your onboarding, answers questions and shares next steps in Messages.\",\r\n    \"Inizia l\u2019iscrizione\": \"Start registration\",\r\n    \"Preferisci parlarne prima? Lascia i contatti nel modulo qui sotto: non stai acquistando un piano.\": \"Would you like to talk first? Leave your contact details below. You\u2019re not purchasing a plan.\",\r\n    \"Preferisci parlarne prima?\": \"Would you like to talk first?\",\r\n    \"Lasciaci i tuoi dati: un manager Florame ti ricontatta per rispondere alle domande e aiutarti a iniziare.\": \"Leave your details. A florame.ai manager will contact you to answer your questions and help you get started.\",\r\n    \"Nessun acquisto da questa pagina\": \"No purchase on this page\",\r\n    \"Non stai scegliendo un piano e non stai effettuando un acquisto.\": \"You\u2019re not choosing a plan or making a purchase.\",\r\n    \"L\u2019iscrizione \u00E8 gratuita? Serve acquistare hardware?\": \"Is registration free? Do I need to buy hardware?\",\r\n    \"S\u00EC, puoi iniziare gratuitamente e senza telecamera, stampante o tablet dedicato. Usi il Partner Hub dal dispositivo che hai gi\u00E0 e aggiorni la disponibilit\u00E0 a mano o con la voce. Eventuali strumenti hardware saranno opzioni aggiuntive, non requisiti.\": \"Yes. You can start for free without a dedicated camera, printer or tablet. Use hub.florame.ai from your existing device and update availability manually or by voice. Any hardware tools will be optional extras, not requirements.\",\r\n    \"Come funziona una richiesta del cliente?\": \"How does a customer request work?\",\r\n    \"Ogni ordine arriva prima come richiesta. Il cliente autorizza il totale, tu controlli bouquet e consegna e decidi se accettare. Florame acquisisce il pagamento soltanto dopo la tua conferma; se rifiuti o la richiesta scade, l\u2019autorizzazione viene rilasciata.\": \"Each order first arrives as a request. The customer authorises the total; you check the bouquet and delivery and decide whether to accept. florame.ai captures payment only after your confirmation. If you decline or the request expires, the authorisation is released.\",\r\n    \"Cosa cambia per oggi, domani o una data pi\u00F9 avanti?\": \"What changes for today, tomorrow or a later date?\",\r\n    \"Per oggi e domani Florame permette richieste soltanto per bouquet composti interamente con lo stock che hai confermato. Dal dopodomani il cliente pu\u00F2 usare il catalogo completo: la richiesta ti ricorda che devi confermare anche i fiori da procurare.\": \"For today and tomorrow, florame.ai allows requests only for bouquets made entirely from your confirmed stock. From the day after tomorrow, customers can use the full catalogue. The request reminds you to confirm any flowers you need to source.\",\r\n    \"Come aggiorno fiori e colori disponibili?\": \"How do I update available flowers and colours?\",\r\n    \"Da Disponibilit\u00E0 scegli aggiornamento manuale o vocale. Il catalogo cliente considera un bouquet disponibile solo quando tutti i fiori e colori della composizione risultano presenti. Quando usi la modalit\u00E0 manuale, le scansioni della telecamera restano disattivate.\": \"In Availability, choose manual or voice updates. The customer catalogue considers a bouquet available only when all its flowers and colours are in stock. Camera scans stay disabled when you use manual mode.\",\r\n    \"Come funzionano prezzi, promozioni e commissione?\": \"How do prices, promotions and commission work?\",\r\n    \"Puoi personalizzare il prezzo dei singoli fiori e colori: Florame ricalcola i bouquet condivisi senza chiederti di modificarli uno per uno. Le promozioni sono separate e si applicano dopo. La quota Florame \u00E8 il 30% del totale prodotti realmente pagato dopo gli sconti; l\u2019Hub mostra l\u2019effetto prima della pubblicazione.\": \"Set prices for individual flowers and colours. florame.ai recalculates shared bouquets without requiring you to edit each one. Promotions are separate and applied afterwards. The florame.ai share is 30% of the product total actually paid after discounts. hub.florame.ai shows the effect before publishing.\",\r\n    \"Posso scegliere cosa mostrare e vendere?\": \"Can I choose what to display and sell?\",\r\n    \"S\u00EC. Vetrina raccoglie i bouquet scelti da te; Pagina negozio controlla immagini e testi; Extra gestisce prodotti aggiuntivi come vasi o cioccolatini, visibili soltanto nel carrello del tuo negozio. Puoi lasciare tutto in bozza finch\u00E9 non \u00E8 pronto.\": \"Yes. Your selection contains the bouquets you choose; Shop page controls images and text; Extras manages additional products such as vases or chocolates, visible only in your shop\u2019s cart. Keep everything in draft until it\u2019s ready.\",\r\n    \"Come imposto consegne, raggio ed esclusioni?\": \"How do I set delivery areas, radius and exclusions?\",\r\n    \"In Impostazioni definisci orari, fasce, preavviso, centro, raggio o CAP e zone escluse. Un test indirizzo ti permette di controllare il risultato prima di pubblicare. Le ZTL automatiche vengono abilitate soltanto dove esiste una fonte ufficiale affidabile.\": \"In Settings, define opening hours, time windows, notice periods, the centre, radius or postal codes and excluded areas. Test an address to check the result before publishing. Automatic restricted-traffic zones are enabled only where a reliable official source exists.\",\r\n    \"S\u00EC. Il proprietario pu\u00F2 invitare collaboratori con accesso completo alle operazioni oppure con permessi limitati, senza condividere la propria password e senza trasferire i privilegi esclusivi di propriet\u00E0.\": \"Yes. Owners can invite colleagues with full operational access or limited permissions, without sharing a password or transferring privileges reserved for the owner.\",\r\n    \"Chi mi aiuta durante e dopo l\u2019onboarding?\": \"Who helps me during and after onboarding?\",\r\n    \"Ogni fiorista riceve un manager Florame assegnato. Lo trovi in Messaggi con nome, contatti e prossimi passi. Puoi anche scrivere a\": \"Each florist is assigned a florame.ai manager. Find their name, contact details and next steps in Messages. You can also email\",\r\n    \"Come funziona per i tuoi clienti\": \"How it works for your customers\",\r\n    \"Screenshot gestione ordini florame.ai\": \"florame.ai order management screenshot\",\r\n    \"Composizione Partner\": \"Partner composition\",\r\n    \"Mockup Disponibilit\u00E0\": \"Availability preview\",\r\n    \"Programma Partner\": \"Partner programme\",\r\n    \"Scopri il contenuto\": \"Explore what\u2019s included\",\r\n    \"Cosa ricevi?\": \"What\u2019s included?\",\r\n    \"Gestione ordini\": \"Order management\",\r\n    \"NOME NEGOZIO\": \"SHOP NAME\",\r\n    \"Nome negozio:\": \"Shop name:\",\r\n    \"Invia candidatura\": \"Submit application\",\r\n    \"Abbiamo ricevuto i tuoi dati.\": \"We\u2019ve received your details.\",\r\n    \"Ti contattiamo noi per valutare insieme il prossimo passo.\": \"We\u2019ll contact you to discuss the next step.\",\r\n    \"Raccontaci del tuo negozio\": \"Tell us about your shop\",\r\n    \"Se ho problemi come vi posso contattare?\": \"How can I contact you if I need help?\",\r\n    \"Siamo a tua disposizione!\": \"We\u2019re here to help.\",\r\n    \"Puoi scriverci alla mail:\": \"You can email us at:\",\r\n    \"Scopri florame.ai\": \"Discover florame.ai\",\r\n    \"Accedi alla dashboard\": \"Open your dashboard\",\r\n    \"Accesso alla Dashboard\": \"Dashboard access\",\r\n    \"per ogni ordine.\": \"for each order.\",\r\n    \"Attiva il mio codice\": \"Activate my code\",\r\n    \"Opzioni di prelievo disponibili sulla dashboard personale\": \"Withdrawal options are available in your dashboard\",\r\n    \"Un pensiero per i tuoi follower\": \"A thoughtful gift for your followers\",\r\n    \"Siamo una Garanzia.\": \"A service you can count on.\",\r\n    \"sistema di monitoraggio delle scorte\": \"stock monitoring system\",\r\n    \"proponiamo al cliente solamente ci\u00F2 che abbiamo realmente negli atelier.\": \"we suggest only what is actually available in our florists\u2019 shops.\",\r\n    \"mostra\": \"shows\",\r\n    \"cosa ricever\u00E0 a casa il destinatario:\": \"what will be delivered to the recipient:\",\r\n    \"Nessun cambio dell'ultimo minuto e nessuna sorpresa.\": \"No last-minute changes or unexpected surprises.\",\r\n    \"\u00C8 la nostra promessa.\": \"That\u2019s our promise.\",\r\n    \"per garantire le consegne nella\": \"to ensure delivery in the\",\r\n    \"Ci\u00F2 che davvero viene apprezzato.\": \"A gesture that means something.\",\r\n    \"Rete locale attiva\": \"Active local network\",\r\n    \"Tutto chiaro.\": \"Everything clear.\",\r\n    \"per ogni ordine tracciato dal tuo link o codice.\": \"for each order tracked through your link or code.\",\r\n    \"Che vantaggio hanno i clienti?\": \"What do customers get?\",\r\n    \"Con il tuo codice ottengono\": \"Your code gives them\",\r\n    \". \u00C8 un incentivo semplice che aumenta conversione.\": \". A simple incentive to encourage purchases.\",\r\n    \"\u00C8 un programma a tempo limitato?\": \"Is the programme time-limited?\",\r\n    \"S\u00EC.\": \"Yes.\",\r\n    \"Dove consegnate?\": \"Where do you deliver?\",\r\n    \"La copertura cambia con i fioristi attivi. Inserisci indirizzo, data e fascia su Florame per vedere le opzioni reali.\": \"Coverage changes with the active florists. Enter an address, date and time window on florame.ai to see current options.\",\r\n    \"Entra nel Programma\": \"Join the programme\",\r\n    \"Inizia a guadagnare con\": \"Start earning with\",\r\n    \"Messaggi\": \"Messages\",\r\n    \"Consegna gratuita\": \"Free delivery\",\r\n    \"Disponibile ora\": \"Available now\",\r\n    \"Scopri di pi\u00F9\": \"Learn more\",\r\n    \"Gi\u00E0 attivo\": \"Already enabled\",\r\n    \"Scegli il piano per la candidatura\": \"Choose a plan for your application\",\r\n    \"La tua vetrina online fornita in collaborazione con florame.ai\": \"Your online shop, powered by florame.ai\",\r\n    \"Accesso alla tecnologia pi\u00F9 avanzata del momento.\": \"Access to the latest technology.\",\r\n    \"Permette il monitoraggio delle scorte in tempo reale.\": \"Track stock in real time.\",\r\n    \"Consente di gestire gli ordini, monitorare l'inventario e accedere alla telecamera.\": \"Manage orders, monitor stock and access the camera.\",\r\n    \"Per stampare la \\\"ricetta\\\", etichetta di spedizione e biglietto.\": \"Print the bouquet recipe, shipping label and message card.\",\r\n    \"Guadagna di pi\u00F9.\": \"Earn more.\",\r\n    \"Progettato per farti occupare solo del bello di questo lavoro, a gestire lo stress ci pensiamo noi.\": \"Focus on the work you love. We take care of the stressful parts.\",\r\n    \"Un sito co-branded, dedicato al tuo negozio.\": \"A website dedicated to your shop, with your brand alongside ours.\",\r\n    \"Dotato della pi\u00F9 innovativa tecnologia, la migliore del momento.\": \"Powered by the latest technology.\",\r\n    \"Zero commissioni a tuo carico\": \"No commission charged to you\",\r\n    \"I prezzi su Florame seguono la media della tua regione, con un +30% che copre la nostra commissione. La paga il cliente online, tu incassi quanto al banco.\": \"Prices on florame.ai follow your regional average, with an additional 30% to cover our commission. The online customer pays it; you receive your usual in-store price.\",\r\n    \"In negozio vendi a \u20AC35\": \"Your in-store price is \u20AC35\",\r\n    \"tu ricevi \u20AC35\": \"you receive \u20AC35\",\r\n    \"Tre modalit\u00E0 chiare per creare un bouquet su misura: guidati dall'AI, partendo da zero o prendendo ispirazione da composizioni esistenti.\": \"Three ways to create a custom bouquet: with AI guidance, from scratch or inspired by existing designs.\",\r\n    \"Compone fiore per fiore, cambia carta, nastro e dettagli finch\u00E9 il bouquet \u00E8 quello giusto.\": \"Choose each flower, then adjust the wrapping, ribbon and details until the bouquet feels right.\",\r\n    \"Parte da idee esistenti e le modifica in un attimo, senza bisogno di un archivio infinito di foto tue.\": \"Start with an existing idea and adapt it in moments, without maintaining a huge photo library.\",\r\n    \", sul tablet fornito o su qualunque dispositivo, dove gestisci ordini, consegne, disponibilit\u00E0 e telecamera.\": \", on the supplied tablet or any device, to manage orders, deliveries, stock and your camera.\",\r\n    \"Ordini Chiari & AI\": \"Clear orders and AI\",\r\n    \"cliente crea online e vede\": \"customer designs online and sees\",\r\n    \", in anticipo, il risultato.\": \", before ordering, what to expect.\",\r\n    \"Tu ricevi una \\\"ricetta\\\"\": \"You receive a bouquet recipe\",\r\n    \"Il sito mostra ai clienti solo i fiori che hai realmente disponibili.\": \"Your website only shows flowers you actually have in stock.\",\r\n    \"il tuo spazio digitale\": \"your online space\",\r\n    \"e spediamo il kit\": \"and send you the kit\",\r\n    \"istruzioni precise per il montaggio e supporto live\": \"clear setup instructions and live support\",\r\n    \"il tablet, la stampante e la telecamera.\": \"the tablet, printer and camera.\",\r\n    \"sistema apprende il tuo inventario in automatico\": \"system learns your stock automatically\",\r\n    \"dal tablet, stampando il necessario con un click.\": \"from the tablet, printing what you need with one tap.\",\r\n    \"ordini chiari e dovrai\": \"clear orders, so you can\",\r\n    \"il bouquet,\": \"the bouquet,\",\r\n    \"usando come riferimento la lista della composizione e la foto.\": \"using the composition list and photo as your guide.\",\r\n    \"Ti baster\u00E0 poi inviarci una foto per controllo qualit\u00E0 e\": \"Then send us a photo for the quality check and\",\r\n    \"Inizia con Florame come preferisci\": \"Choose how to get started with florame.ai\",\r\n    \"Sito, tecnologia in negozio e supporto tecnico: tutto incluso in ogni piano. Cambia solo per quanto ti impegni.\": \"Your website, in-store technology and technical support are included in every plan. Choose the commitment that suits you.\",\r\n    \"Il pi\u00F9 scelto\": \"Most popular\",\r\n    \"90\u20AC di pubblicit\u00E0 inclusi\": \"\u20AC90 of advertising included\",\r\n    \"Il tempo giusto per partire, farti vedere e misurare i primi ordini.\": \"Time to launch, get noticed and measure your first orders.\",\r\n    \"per 3 mesi\": \"for 3 months\",\r\n    \"Scelgo il trimestrale\": \"Choose quarterly\",\r\n    \"Parti subito e valuti il canale mese per mese.\": \"Start now and review your results month by month.\",\r\n    \"Disdici quando vuoi\": \"Cancel at any time\",\r\n    \"Massima flessibilit\u00E0, stesso kit incluso.\": \"Full flexibility, with the same kit included.\",\r\n    \"Tutto incluso\": \"All included\",\r\n    \"Inizia mese per mese\": \"Start with a monthly plan\",\r\n    \"Per chi fa sul serio\": \"For a lasting commitment\",\r\n    \"Per lavorare con continuit\u00E0 su tutte le ricorrenze dell'anno.\": \"Keep your shop ready for every occasion throughout the year.\",\r\n    \"Il prezzo migliore\": \"Best price\",\r\n    \"Un solo pagamento\": \"One payment\",\r\n    \"Seleziona il piano che preferisci: lo troverai gi\u00E0 indicato nella candidatura.\": \"Choose your preferred plan. It will be preselected in your application.\",\r\n    \"Lasciaci i tuoi dati: ti ricontattiamo per capire se Florame \u00E8 adatto al tuo negozio e alla tua zona.\": \"Leave your details and we\u2019ll contact you to see whether florame.ai suits your shop and area.\",\r\n    \"Ti contattiamo noi per valutare insieme il piano e i prossimi passi.\": \"We\u2019ll contact you to discuss your plan and next steps.\",\r\n    \"Quali sono i piani disponibili?\": \"Which plans are available?\",\r\n    \"Il piano mensile costa 189\u20AC al mese, il trimestrale costa 349\u20AC ogni 3 mesi e include anche 90\u20AC di pubblicit\u00E0, mentre l'annuale costa 1.399\u20AC all'anno.\": \"The monthly plan costs \u20AC189 a month. The quarterly plan costs \u20AC349 every 3 months and includes \u20AC90 of advertising. The annual plan costs \u20AC1,399 a year.\",\r\n    \"In tutti i casi sono inclusi storefront partner, app gestionale, kit hardware in comodato, onboarding e supporto.\": \"Every plan includes your partner shop, management app, loaned hardware kit, onboarding and support.\",\r\n    \"Assolutamente no. Il sistema aggiorna il catalogo in automatico.\": \"No. The system updates your catalogue automatically.\",\r\n    \"Grazie alla telecamera e all'Intelligenza Artificiale, il tuo sito mostrer\u00E0 sempre composizioni basate sui fiori che hai realmente a disposizione in quel momento.\": \"The camera and AI keep your website\u2019s compositions based on the flowers you actually have available.\",\r\n    \"Devo pagare delle commissioni sugli ordini?\": \"Is there a commission on orders?\",\r\n    \"S\u00EC. I prezzi di vendita su Florame sono calcolati in base alla media regionale e includono gi\u00E0 la commissione del 30%.\": \"Yes. Prices on florame.ai are based on your regional average and already include the 30% commission.\",\r\n    \"Florame trattiene automaticamente la propria quota al momento della transazione e i tuoi ricavi netti vengono liquidati ogni settimana, senza ulteriori trattenute.\": \"florame.ai retains its share automatically at the time of the transaction. Your net earnings are paid weekly, with no further deductions.\",\r\n    \"Non c'\u00E8 nessuna penale e nessun vincolo temporale. Se l'abbonamento non fa per te, puoi disdire in qualsiasi momento.\": \"There is no cancellation fee or minimum term. If the subscription does not suit you, you can cancel at any time.\",\r\n    \"Ti chiederemo semplicemente di spedirci indietro il Kit Hardware (Tablet, Camera e Stampante) fornito in comodato d'uso.\": \"Simply return the loaned hardware kit: tablet, camera and printer.\",\r\n    \"Il sito \u00E8 davvero incluso?\": \"Is the website really included?\",\r\n    \"Ti forniamo un e-commerce moderno e performante, che si gestisce da solo grazie alla tecnologia florame.ai\": \"We provide a modern online shop that runs automatically with florame.ai technology\",\r\n    \"Serve un tecnico per l'installazione?\": \"Do I need a technician for installation?\",\r\n    \"No. Il kit arriva pre-configurato.\": \"No. Your kit arrives preconfigured.\",\r\n    \"Basta collegarlo alla presa, al WiFi e seguire le semplici istruzioni di montaggio contenute nella scatola.\": \"Connect it to power and Wi-Fi, then follow the simple setup instructions in the box.\",\r\n    \"La verifica finale non \u00E8 disponibile in questo momento.\": \"The final check is unavailable right now.\",\r\n    \"La verifica del carrello non \u00E8 stata completata.\": \"The cart check could not be completed.\",\r\n    \"Non siamo riusciti ad aggiornare il bouquet nel carrello. Riprova.\": \"We couldn\u2019t update the bouquet in your cart. Please try again.\",\r\n    \"Impossibile controllare la consegna in questo momento.\": \"We can\u2019t check delivery right now.\",\r\n    \"Ci dispiace, il CAP\": \"Sorry, the postcode\",\r\n    \"non \u00E8 ancora coperto dal servizio.\": \"is not covered by the service yet.\",\r\n    \"Il fiorista selezionato\": \"The selected florist\",\r\n    \"non consegna qui. Abbiamo trovato\": \"does not deliver here. We found\",\r\n    \": confronta la proposta prima di cambiare fiorista.\": \": review the proposal before switching florists.\",\r\n    \"non consegna a questo indirizzo. Cerca un altro fiorista Florame che copra la zona.\": \"does not deliver to this address. Find another florame.ai florist who covers the area.\",\r\n    \"Non riesco a verificare questo prodotto. Riprova dalla sua scheda.\": \"We couldn\u2019t check this product. Please try again from its page.\",\r\n    \"Non riesco a caricare i fioristi. Ricarica la pagina e riprova.\": \"We couldn\u2019t load the florists. Refresh the page and try again.\",\r\n    \"Non riesco a verificare il carrello. Controlla la connessione e riprova.\": \"We couldn\u2019t check your cart. Check your connection and try again.\",\r\n    \"Il carrello contiene prodotti non attribuiti correttamente. Svuotalo e riprova.\": \"Some products in your cart could not be linked to a florist. Empty the cart and try again.\",\r\n    \"Scelta del fiorista annullata. Il prodotto non \u00E8 stato aggiunto.\": \"Florist selection cancelled. The product was not added.\",\r\n    \"Il bouquet \u00E8 cambiato mentre sceglievi il fiorista. Aggiorna la pagina e riprova.\": \"The bouquet changed while you were choosing a florist. Refresh the page and try again.\",\r\n    \"Stiamo preparando il prezzo del fiorista. Riprova tra pochi secondi.\": \"We\u2019re preparing the florist\u2019s price. Try again in a few seconds.\",\r\n    \"La verifica del fiorista sta impiegando troppo tempo. Il bouquet \u00E8 salvo: riprova.\": \"Checking the florist is taking longer than expected. Your bouquet is saved. Please try again.\",\r\n    \"Non abbiamo trovato un fiorista disponibile per questo bouquet e questo indirizzo.\": \"We couldn\u2019t find an available florist for this bouquet and address.\",\r\n    \"Questo bouquet non \u00E8 pi\u00F9 disponibile per la richiesta locale. Riaprilo dal catalogo e riprova.\": \"This bouquet is no longer available for a local request. Open it again from the catalogue and try again.\",\r\n    \"Questo bouquet non \u00E8 disponibile con il fiorista e la modalit\u00E0 del carrello. Scegli un bouquet dal tuo fiorista o riprova tra poco.\": \"This bouquet is unavailable with the florist and delivery method in your cart. Choose a bouquet from your florist or try again shortly.\",\r\n    \"Non puoi aggiungere prodotti di fioristi diversi insieme.\": \"You can\u2019t combine products from different florists in one cart.\",\r\n    \"Il carrello contiene gi\u00E0 prodotti di un altro fiorista. Svuotalo prima di cambiare.\": \"Your cart already contains products from another florist. Empty it before switching.\",\r\n    \"Impossibile verificare il costo di consegna. Riprova.\": \"We couldn\u2019t check the delivery cost. Please try again.\",\r\n    \"sblocchi la spedizione gratuita\": \"to unlock free delivery\",\r\n    \"Passa dal tuo fiorista.\": \"Collect from your florist.\",\r\n    \"Sbloccata per il tuo bouquet\": \"Unlocked for your bouquet\",\r\n    \"Costo di consegna non sincronizzato. Riprova prima di autorizzare l\u2019ordine.\": \"The delivery cost has not synced. Try again before authorising your order.\",\r\n    \"La modalit\u00E0 scelta non coincide con il costo di consegna nel carrello.\": \"The selected delivery method does not match the delivery cost in your cart.\",\r\n    \"Costo di consegna non disponibile. Il pagamento resta bloccato.\": \"The delivery cost is unavailable. Payment remains blocked.\",\r\n    \"Stiamo verificando il ritiro con il fiorista. Riprova tra pochi secondi.\": \"We\u2019re checking collection with the florist. Try again in a few seconds.\",\r\n    \"Cambia indirizzo di consegna:\": \"Change delivery address:\",\r\n    \"Cambia indirizzo\": \"Change address\",\r\n    \"dai preferiti\": \"from favourites\",\r\n    \"ai preferiti\": \"to favourites\",\r\n    \"dai fioristi preferiti\": \"from favourite florists\",\r\n    \"nei fioristi preferiti\": \"to favourite florists\",\r\n    \"Invia messaggio a\": \"Message\",\r\n    \"dal carrello del primo fiorista. Questa azione non si pu\u00F2 annullare.\": \"from the first florist\u2019s cart. This action cannot be undone.\",\r\n    \"l\u00EC. Scegli dove continuare.\": \"there. Choose where to continue.\",\r\n    \"I dati di questo bouquet non sono pi\u00F9 disponibili. Scegli un altro bouquet oppure componine uno nuovo.\": \"This bouquet\u2019s details are no longer available. Choose another bouquet or create a new one.\",\r\n    \"La composizione del bouquet non \u00E8 disponibile. Componi un nuovo bouquet per continuare.\": \"This bouquet\u2019s composition is unavailable. Create a new bouquet to continue.\",\r\n    \"Il prodotto di questo bouquet non \u00E8 disponibile per l\u2019acquisto. Riparti dalla composizione per generare una nuova anteprima.\": \"This bouquet is unavailable to buy. Return to its composition to generate a new preview.\",\r\n    \"Questo bouquet contiene fiori fuori stagione. Modifica la composizione per continuare.\": \"This bouquet contains flowers that are out of season. Edit its composition to continue.\",\r\n    \"Scegli dove ritirare\": \"Choose where to collect\",\r\n    \"Ogni ritiro richiede la conferma del fiorista.\": \"Every collection requires confirmation from the florist.\",\r\n    \"fioristi con ritiro\": \"florists offering collection\",\r\n    \"Indirizzo di consegna\": \"Delivery address\",\r\n    \"Caricamento Credito florame.ai\": \"Loading florame.ai Credit\",\r\n    \"Rivedi o revoca il consenso\": \"Review or withdraw consent\",\r\n    \"Il fiorista conferma di poter preparare bene il bouquet e rispettare la consegna prima che florame.ai acquisisca il pagamento. In Messaggi puoi seguire risposta e passaggi successivi.\": \"The florist confirms they can prepare your bouquet and fulfil delivery before florame.ai captures your payment. Follow their reply and next steps in Messages.\",\r\n    \"La banca autorizza prima il totale. florame.ai lo acquisisce soltanto se il fiorista accetta. Se la richiesta viene rifiutata o scade, l\u2019autorizzazione viene rilasciata; la banca pu\u00F2 impiegare qualche giorno a mostrare di nuovo l\u2019importo disponibile.\": \"Your bank first authorises the total. florame.ai captures it only if the florist accepts. If your request is declined or expires, the authorisation is released. Your bank may take a few days to make the amount available again.\",\r\n    \"Apri Messaggi dalla navigazione principale. La conversazione mostra richiesta, consegna, tempo di risposta e stato del pagamento. Le comunicazioni florame.ai sono in sola lettura; per parlare con una persona usa la chat di assistenza qui sotto.\": \"Open Messages from the main navigation to follow your request, delivery, response deadline and payment status. florame.ai announcements are read-only. To speak to someone, use the support chat below.\",\r\n    \"Prima del pagamento usa sempre lo stesso controllo \u201CDove e quando\u201D. florame.ai mantiene indirizzo, data e fascia sincronizzati fra negozio, carrello e checkout. Una modifica dopo l\u2019invio della richiesta pu\u00F2 richiedere una nuova conferma del fiorista.\": \"Before payment, use \u201CWhere and when\u201D to check your details. florame.ai keeps the address, date and time slot in sync across the shop, cart and checkout. Changes after submitting a request may require the florist to confirm again.\",\r\n    \"L\u2019anteprima guida colori e stile. I fiori veri cambiano naturalmente; quando disponibile, la foto prima della partenza ti permette di controllare il bouquet realmente preparato.\": \"The preview guides the colours and style. Real flowers naturally vary. When available, the photo taken before dispatch lets you check the bouquet that was prepared.\",\r\n    \"florame.ai privilegia una fascia di consegna chiara e aggiornamenti utili sull\u2019ordine, invece di una mappa in movimento.\": \"florame.ai provides a clear delivery slot and useful order updates rather than a live map.\",\r\n    \"Dalla richiesta alla conferma del fiorista\": \"From your request to the florist\u2019s confirmation\",\r\n    \"Accetta il regolamento e attiva il Club: da quel momento accumuli punti florame.ai. 100 punti valgono 1 \u20AC sui prossimi ordini.\": \"Accept the terms and activate the Club to start earning florame.ai points. 100 points are worth \u20AC1 on future orders.\",\r\n    \"Ordini e pagamenti\": \"Orders and payments\",\r\n    \"DOPO LA VERIFICA\": \"AFTER VERIFICATION\",\r\n    \"I tuoi fiori. Il tuo stile. Il tuo negozio.\": \"Your flowers. Your style. Your shop.\",\r\n    \"La tua pagina \u00E8 pronta\": \"Your page is ready\",\r\n    \"Il tuo negozio, da qui.\": \"Your shop starts here.\",\r\n    \"Parti dal tuo profilo Google\": \"Start with your Google profile\",\r\n    \"Zona di consegna\": \"Delivery area\",\r\n    \"I tuoi orari\": \"Your opening hours\",\r\n    \"Cosa c\u2019\u00E8 oggi in negozio?\": \"What\u2019s in stock today?\",\r\n    \"Salva disponibilit\u00E0\": \"Save availability\",\r\n    \"Il tuo negozio, in un link.\": \"Your shop, in one link.\",\r\n    \"La tua pagina personale\": \"Your own page\",\r\n    \"I tuoi clienti\": \"Your customers\",\r\n    \"Anteprima di condivisione\": \"Sharing preview\",\r\n    \"Scopri i fiori disponibili\": \"Explore available flowers\",\r\n    \"Il nostro negozio \u00E8 anche online.\": \"Our shop is now online too.\",\r\n    \"Un link. Tutti i tuoi canali.\": \"One link. Every channel.\",\r\n    \"Conferma zona e orari\": \"Confirm area and hours\",\r\n    \"Parti dalle informazioni che hai gi\u00E0\": \"Start with the information you already have\",\r\n    \"Conferma zona e orari di consegna\": \"Confirm your delivery area and hours\",\r\n    \"La tua identit\u00E0, anche online.\": \"Your identity, online too.\",\r\n    \"Un tocco: il fiore \u00E8 disponibile.\": \"One tap makes a flower available.\",\r\n    \"\u00C8 finito? Lo disattivi subito.\": \"Sold out? Turn it off instantly.\",\r\n    \"Salva. Il catalogo \u00E8 aggiornato.\": \"Save. Your catalogue is up to date.\",\r\n    \"Copia il link della tua pagina.\": \"Copy your page link.\",\r\n    \"Scegli dove condividerlo.\": \"Choose where to share it.\",\r\n    \"I tuoi clienti sanno dove trovarti.\": \"Your customers know where to find you.\",\r\n    \"Verifica consegna Florame\": \"Check florame.ai delivery\",\r\n    \"Indirizzo completo del destinatario\": \"Recipient\u2019s full address\",\r\n    \"Consegna Florame\": \"florame.ai delivery\",\r\n    \"Zero Fiori Morti\": \"No Wasted Flowers\",\r\n    \"Fuggi dal marcio del delivery di fiori online. Scegli la certezza.\": \"Leave unreliable flower delivery behind. Choose peace of mind.\",\r\n    \"I grandi siti vendono illusioni: cataloghi finti, commissioni enormi e sostituzioni dell'ultimo minuto. Florame verifica la disponibilita reale, guida i fioristi con la tua idea e ti mostra la foto vera prima della consegna.\": \"Large websites sell an illusion: unrealistic catalogues, huge commissions and last-minute substitutions. florame.ai checks actual availability, guides the florist with your idea and shows you a real photo before delivery.\",\r\n    \"Crea in 60 secondi\": \"Create in 60 seconds\",\r\n    \"Voglio creare un bouquet senza rischiare\": \"Create a bouquet with confidence\",\r\n    \"Suggerimenti Google. Seleziona una via con numero civico, poi continua.\": \"Choose a Google address suggestion with a street number, then continue.\",\r\n    \"Acquista il tuo bouquet senza rischi\": \"Order your bouquet with confidence\",\r\n    \"In questa zona non consegniamo ancora: qui vedi solo idee della community.\": \"We don\u2019t deliver to this area yet. You can still explore community ideas.\",\r\n    \"Disponibili subito nella tua zona\": \"Available now in your area\",\r\n    \"L'industria dei fiori online e una roulette russa.\": \"Ordering flowers online can feel like a gamble.\",\r\n    \"Quando compri un bouquet sui grandi siti tradizionali, pensi di acquistare un momento speciale. La realta? Stai comprando un biglietto della lotteria: fino a 1 cliente su 3 vive un incubo operativo.\": \"When you order from a large traditional flower website, you expect a special moment. In reality, it can feel like buying a lottery ticket: up to 1 in 3 customers faces a delivery nightmare.\",\r\n    \"Ti mostrano un catalogo digitale perfetto. Tu paghi una cifra premium.\": \"You see a perfect digital catalogue and pay a premium price.\",\r\n    \"Catena degli intermediari\": \"A chain of middlemen\",\r\n    \"Trattengono fino al 50% dei tuoi soldi e girano le briciole a un fiorista locale a caso.\": \"They keep up to 50% of your payment and pass a small share to a randomly selected local florist.\",\r\n    \"Il mazzo \\\"avanzo\\\"\": \"The leftover bouquet\",\r\n    \"Con poco margine, il fiorista compone usando quello che ha in frigo. Spesso fiori vecchi o vicini a morire.\": \"With little margin left, the florist uses whatever is in the fridge. Often, those flowers are old or close to wilting.\",\r\n    \"Il muro di gomma\": \"Customer support that goes nowhere\",\r\n    \"Se il mazzo arriva marcio o non arriva, l'assistenza ufficiale ignora i reclami nel 91% dei casi.\": \"If your flowers arrive spoiled or never arrive, official support ignores complaints in 91% of cases.\",\r\n    \"Come Florame ti garantisce una figura pazzesca\": \"How florame.ai helps you make their day\",\r\n    \"Nessun catalogo fantoccio. Crei il bouquet personalizzando ogni dettaglio e l'anteprima diventa la guida dei nostri fioristi.\": \"Create a bouquet with every detail personalised. Your preview becomes the florist\u2019s guide.\",\r\n    \"Sistema Zero Fiori Morti\": \"No Wasted Flowers system\",\r\n    \"Il destinatario riceve SMS o mail per confermare o spostare l'orario. Zero viaggi a vuoto, fiori freschi, meno ansia.\": \"The recipient receives a text or email to confirm or reschedule the time. No wasted trips, fresh flowers and less worry.\",\r\n    \"Biglietto personale\": \"Personal message card\",\r\n    \"Scegli un biglietto classico oppure scrivi sullo schermo: possiamo stampare il tuo tratto reale, anche solo come firma.\": \"Choose a classic card or write on the screen. We can print your own handwriting, even just your signature.\",\r\n    \"Appena il bouquet e pronto, ricevi la foto reale sul telefono. Vedi esattamente cosa hai pagato prima della consegna.\": \"Once the bouquet is ready, you receive a real photo on your phone. See what you paid for before delivery.\",\r\n    \"L'AI vede. I fioristi toccano i petali.\": \"AI checks. Florists feel the petals.\",\r\n    \"Prima del confezionamento controlliamo ogni singolo fiore a mano. Se non e idoneo e pronto a durare a lungo, lo scartiamo. Se serve cambiare strada, ti contattiamo e troviamo la soluzione migliore.\": \"Before wrapping, we check each flower by hand. We remove any that are unsuitable or unlikely to last. If a change is needed, we contact you to find the best solution.\",\r\n    \"Se facciamo una cazzata noi, paghiamo noi. Punto.\": \"If we mess up, we pay for it. Simple.\",\r\n    \"Ci mettiamo la faccia con un servizio clienti umano, diretto e reperibile.\": \"Real people provide direct, accessible customer support.\",\r\n    \"Metti al sicuro il suo sorriso ora\": \"Make their smile a certainty\",\r\n    \"Se il corriere manca lo slot orario garantito, scelto da te o riprogrammato dal destinatario, ti rimborsiamo per l'inconveniente.\": \"If the courier misses the guaranteed time slot, whether chosen by you or rescheduled by the recipient, we compensate you for the inconvenience.\",\r\n    \"Se la foto reale e totalmente diversa da cio che hai creato, consegniamo comunque per non lasciare il festeggiato a mani vuote e ti riaccreditiamo subito il valore in coupon o valutiamo un rimborso parziale immediato.\": \"If the real photo is completely different from your design, we still deliver so the recipient is not left empty-handed. We promptly credit the value as a voucher or consider an immediate partial refund.\",\r\n    \"Tutto e iniziato a Roma, nel 2021. In un piccolo bar di quartiere dove Leonardo lavorava come barista per pagarsi gli studi in Statistica e Data Science alla Sapienza, e Matteo era un cliente fisso. Tra caffe, tecnologia e business, abbiamo capito di avere la stessa ossessione: usare la tecnologia avanzata per risolvere problemi reali.\": \"It began in Rome in 2021, in a small neighbourhood caf\u00E9. Leonardo worked there to fund his Statistics and Data Science studies at Sapienza, and Matteo was a regular customer. Over coffee, technology and business, we discovered a shared obsession: using advanced technology to solve real problems.\",\r\n    \"Matteo e cresciuto nel negozio di fiori di famiglia, Fiori e Piante di Nino. Dai 14 anni ha visto l'orrore quotidiano dei vecchi intermediari: ordini ciechi, fiori non di stagione, sostituzioni dell'ultimo minuto e clienti delusi dopo aver speso 80 euro per mandare amore a distanza.\": \"Matteo grew up in the family flower shop, Fiori e Piante di Nino. From the age of 14, he saw the daily problems caused by traditional middlemen: orders without clear instructions, out-of-season flowers, last-minute substitutions and disappointed customers who had spent \u20AC80 to send love from afar.\",\r\n    \"Leonardo, tra AI, embedded machine learning e lavori da rider e cameriere, conosceva l'ansia delle consegne nel traffico di Roma. Ci siamo guardati indietro e abbiamo capito che nessuno stava proteggendo i sentimenti delle persone. Cosi abbiamo deciso di farlo noi.\": \"Through AI, embedded machine learning and jobs as a delivery rider and waiter, Leonardo knew the stress of deliveries in Rome\u2019s traffic. Looking back, we realised that nobody was protecting the feelings behind each order. So we decided to do it ourselves.\",\r\n    \"Fai la tua scelta adesso\": \"Make your choice\",\r\n    \"Sperare che vada tutto bene, oppure controllare prima.\": \"Hope for the best, or check before delivery.\",\r\n    \"Puoi aprire un vecchio catalogo, selezionare una foto stock e assumerti il rischio di fiori appassiti. Oppure puoi dedicare un minuto a Florame.ai, verificare la disponibilita reale, controllare la foto pre-partenza e goderti l'emozione pura di chi riceve esattamente cio che hai voluto regalargli.\": \"You can choose a stock photo from a traditional catalogue and risk wilted flowers. Or spend a minute on florame.ai, check actual availability, review the photo before dispatch and enjoy the moment when someone receives the gift you imagined.\",\r\n    \"Domande prima di ordinare\": \"Questions before ordering\",\r\n    \"L'anteprima AI sara identica al bouquet reale?\": \"Will the real bouquet look exactly like the AI preview?\",\r\n    \"No. Sara peggio dell'originale: l'AI da linea guida cromatica e stile, ma i fiori veri hanno profumo, consistenza e sfumature che i pixel non possono replicare. La foto reale pre-partenza ti da la prova.\": \"No. The preview cannot match the original: AI guides the colours and style, while real flowers have fragrance, texture and subtle variations that pixels cannot capture. The photo before dispatch shows the actual result.\",\r\n    \"Perche contattate il destinatario prima? Non rovinate la sorpresa?\": \"Why contact the recipient first? Doesn\u2019t that spoil the surprise?\",\r\n    \"No: diciamo solo che c'e un regalo per lui. Il sistema Zero Fiori Morti evita passaggi a vuoto e permette di scegliere l'orario comodo.\": \"No. We only say there is a gift for them. The No Wasted Flowers system avoids missed deliveries and lets them choose a convenient time.\",\r\n    \"C'e il tracking live sulla mappa?\": \"Can I track delivery on a live map?\",\r\n    \"No. Guardare una mappa non fa muovere il corriere piu velocemente nel traffico di Roma. Ti diamo una cosa migliore: slot orario garantito. Se sgarriamo, non paghi.\": \"No. Watching a map won\u2019t move the courier through Rome\u2019s traffic any faster. We offer a guaranteed time slot instead. If we miss it, you don\u2019t pay.\",\r\n    \"Come funziona il biglietto scritto a mano?\": \"How does the handwritten card work?\",\r\n    \"Se ho un problema con l'ordine a chi mi rivolgo?\": \"Who can help if there is a problem with my order?\",\r\n    \"Nessun bot e nessuna email dimenticata. Il nostro servizio clienti e gestito da persone reali pronte a risolvere imprevisti logistici o modifiche all'ordine.\": \"Our support team consists of real people, ready to help with delivery issues or changes to your order.\",\r\n    \"Verifica l'indirizzo e crea un bouquet senza rischiare.\": \"Check the address and create your bouquet with confidence.\",\r\n    \"Apri ora\": \"Open now\",\r\n    \"Anteprima dell'app Florame Printer\": \"florame.ai Printer app preview\",\r\n    \"Florame Printer per Android\": \"florame.ai Printer for Android\",\r\n    \"L'app nativa per collegare il tablet del partner alla stampante Xprinter, ricevere le stampe dal Partner Hub e creare biglietti personalizzati direttamente in negozio.\": \"Connect your shop\u2019s tablet to an Xprinter, receive print jobs from hub.florame.ai and create personalised cards in store.\",\r\n    \"Come installarla\": \"How to install\",\r\n    \"Ti penso oggi, con il profumo dei fiori appena scelti per te.\": \"Thinking of you today, with the scent of flowers chosen just for you.\",\r\n    \"Anteprima zoom\": \"Enlarged preview\",\r\n    \"Per il negozio\": \"For your shop\",\r\n    \"Un'app fatta per stampare, non per configurare ogni volta.\": \"Ready to print, without repeated setup.\",\r\n    \"Florame Printer resta attiva sul tablet, ascolta le stampe del Partner Hub e mantiene la stampante pronta. La ricerca manuale ora usa solo discovery UDP Xprinter e chiede sempre quale stampante salvare mostrando nome reale, IP e MAC. Se l'IP cambia prova a ritrovarla automaticamente e include il setup Florame 100x150 mm con un solo pulsante verificato sulla XP-420B reale senza calibrazioni che avanzano etichette. L'anteprima dei biglietti ora usa la stessa bitmap inviata alla stampante, con margini anti-taglio per la firma in basso e firma partner leggibile anche quando il device ha ancora in cache lo slug.\": \"florame.ai Printer stays active on the tablet, receives jobs from hub.florame.ai and keeps your printer ready. Manual discovery uses Xprinter UDP and always asks you to select a printer, showing its name, IP and MAC. If the IP changes, the app tries to find it again automatically. One button restores the florame.ai 100\u00D7150 mm setup, tested on a real XP-420B without calibration that wastes labels. Card previews use the same bitmap sent to the printer, with safe margins for the signature and a readable shop name even when an older identifier is cached.\",\r\n    \"Scrivi fino a 1000 caratteri, modifica firma e dimensioni, apri l'anteprima a schermo intero e stampa il biglietto direttamente dal tablet con formato etichetta Florame 100x150 mm. Oltre 500 caratteri il layout riduce progressivamente i margini per dare piu' spazio al testo, stringe il gap dalla firma e, se troppi a capo manuali farebbero invadere la firma, li compatta in spazi per mantenere il testo leggibile. Oltre 750 caratteri il contatore avvisa che il testo verra' stampato piu' piccolo.\": \"Write up to 1,000 characters, adjust the signature and size, open a full-screen preview and print from the tablet on florame.ai 100\u00D7150 mm labels. Above 500 characters, the layout gradually reduces the margins and the gap above the signature. Excess line breaks become spaces when needed to prevent overlap. Above 750 characters, the counter warns that the text will print smaller.\",\r\n    \"Il nome in firma arriva dal partner collegato al device: ogni negozio vede il proprio naming leggibile, non lo slug tecnico, senza impostazioni manuali.\": \"The signature uses the name of the shop linked to the device, without manual setup.\",\r\n    \"Gli ordini inviati da Florame passano dalla coda di stampa e vengono marcati come riusciti solo quando la stampante risponde.\": \"Orders from florame.ai enter the print queue and are marked successful only when the printer responds.\",\r\n    \"La home separa le azioni quotidiane da quelle operative: Biglietto, PDF, Stampante, Partner Hub e Ultime stampe restano raggiungibili subito senza cambiare le funzioni gia' collegate.\": \"The home screen keeps everyday actions easy to reach: Card, PDF, Printer, hub.florame.ai and Recent prints.\",\r\n    \"Scarica l'APK, installalo sul tablet Android e collega il codice al Partner Hub.\": \"Download the APK, install it on your Android tablet and link the device code in hub.florame.ai.\",\r\n    \"Dopo l'installazione apri Florame Printer, configura la stampante sulla stessa rete Wi-Fi, usa Ripristina Setup Florame 100x150 dalla home e copia il codice dispositivo nel Partner Hub.\": \"After installation, open florame.ai Printer, connect the printer to the same Wi-Fi network, select Restore florame.ai 100\u00D7150 setup on the home screen and copy the device code into hub.florame.ai.\",\r\n    \"Google puo' bloccare l'installazione diretta degli APK scaricati dal browser. Il pacchetto e' firmato Florame; per telefoni bloccati usa l'installazione via USB/ADB oppure installa da un canale Google Play autorizzato.\": \"Google may block APKs downloaded through a browser. The package is signed by florame.ai. For restricted devices, use USB/ADB installation or an authorised Google Play channel.\",\r\n    \"Apri il file APK dal tablet e consenti l'installazione da browser o file manager.\": \"Open the APK on your tablet and allow installation from the browser or file manager.\",\r\n    \"Inserisci nel Partner Hub il codice dispositivo mostrato nell'app.\": \"Enter the device code shown in the app into hub.florame.ai.\",\r\n    \"Usa Cerca in rete, scegli manualmente la stampante UDP corretta leggendo nome reale, IP e MAC, poi premi Ripristina Setup Florame 100x150 dalla home: l'app imposta SIZE 100 mm, 150 mm, GAP 0.125, SPEED 6 verificato su XP-420B, UTF-8, sensore GAP, tear mode e nome reale Florame STPxxx se quello attuale e' generico.\": \"Select Search network and choose the correct UDP printer by checking its name, IP and MAC. Then select Restore florame.ai 100\u00D7150 setup on the home screen. The app sets SIZE 100 mm, 150 mm, GAP 0.125, SPEED 6 tested on XP-420B, UTF-8, the GAP sensor and tear mode. A generic printer name is replaced with Florame STPxxx.\",\r\n    \"Usa ordini e biglietti personali dal tablet: la home non espone piu' il vecchio test stampa.\": \"Print orders and personal cards from the tablet. The home screen no longer shows the old test-print action.\",\r\n    \"Download sempre aggiornato\": \"Always the latest download\",\r\n    \"Questo pulsante punta al file pi\u00F9 recente pubblicato sul tema Shopify. Quando aggiorniamo l'app, ricarichiamo qui il nuovo APK.\": \"This button downloads the latest APK published with the Shopify theme. We replace it whenever the app is updated.\",\r\n    \"Puoi riprovare il checkout\": \"You can try checkout again\",\r\n    \"Riepilogo pronto da rivedere\": \"Summary ready to review\",\r\n    \"Sostituita da una nuova proposta\": \"Replaced by a new proposal\",\r\n    \"Proposta non disponibile\": \"Proposal unavailable\",\r\n    \"In attesa della conferma del fiorista\": \"Awaiting the florist\u2019s confirmation\",\r\n    \"Florame sta cercando un fiorista per la tua consegna\": \"florame.ai is finding a florist for your delivery\",\r\n    \"Richiesta confermata\": \"Request confirmed\",\r\n    \"Il fiorista ha accettato \u00B7 pagamento acquisito\": \"The florist accepted \u00B7 payment captured\",\r\n    \"Consulta il pagamento e l\u2019eventuale rimborso nei dettagli\": \"Check the details for payment and refund information\",\r\n    \"Richiesta non accettata\": \"Request declined\",\r\n    \"Richiesta scaduta\": \"Request expired\",\r\n    \"Hai una nuova proposta\": \"You have a new proposal\",\r\n    \"Nuovo pagamento solo se decidi di continuare\": \"A new payment only if you choose to continue\",\r\n    \"Conferma pagamento\": \"Confirm payment\",\r\n    \"Il fiorista ha accettato \u00B7 pagamento in verifica\": \"The florist accepted \u00B7 checking payment\",\r\n    \"Segui le indicazioni nello stato ufficiale dell\u2019ordine\": \"Follow the instructions in your order status\",\r\n    \"Benvenuto in Florame: qui troverai aggiornamenti utili, offerte e tutorial.\": \"Welcome to florame.ai. Find useful updates, offers and tutorials here.\",\r\n    \"Questa proposta non \u00E8 pi\u00F9 utilizzabile. Puoi chiedere al fiorista una nuova proposta o contattare Florame.\": \"This proposal is no longer valid. Ask the florist for a new proposal or contact florame.ai.\",\r\n    \"Puoi tornare alla conversazione per valutare un\u2019altra proposta con il fiorista. Per altri dubbi, siamo qui.\": \"Return to the conversation to discuss another proposal with the florist. We\u2019re here if you need help.\",\r\n    \"C\u2019\u00E8 una proposta pi\u00F9 recente\": \"There is a newer proposal\",\r\n    \"Torna alla conversazione e cerca l\u2019ultima proposta del fiorista. Se non la trovi, contattaci.\": \"Return to the conversation and look for the florist\u2019s latest proposal. Contact us if you can\u2019t find it.\",\r\n    \"Chiedi al fiorista un\u2019alternativa oppure contatta Florame per assistenza.\": \"Ask the florist for an alternative or contact florame.ai for help.\",\r\n    \"Per chiarimenti sul pagamento, modifiche o problemi con la consegna, contatta Florame.\": \"For payment questions, changes or delivery issues, contact florame.ai.\",\r\n    \"In attesa del fiorista\": \"Waiting for the florist\",\r\n    \"La richiesta attende una risposta. Puoi controllarne i dettagli o chiedere aiuto a Florame.\": \"Your request is awaiting a reply. Check its details or ask florame.ai for help.\",\r\n    \"Ricerca del fiorista in corso\": \"Finding a florist\",\r\n    \"Florame sta cercando un fiorista per la richiesta. Qui puoi chiedere un aggiornamento.\": \"florame.ai is finding a florist for your request. Ask for an update here.\",\r\n    \"Consulta lo stato dell\u2019ordine per gli aggiornamenti su annullamento o rimborso. Florame pu\u00F2 aiutarti a chiarire i prossimi passi.\": \"Check your order status for cancellation or refund updates. florame.ai can help with the next steps.\",\r\n    \"Consulta lo stato dell\u2019ordine per gli aggiornamenti su annullamento o rimborso. Per dubbi, contatta Florame.\": \"Check your order status for cancellation or refund updates. Contact florame.ai if you have questions.\",\r\n    \"Puoi rivedere la proposta nella conversazione. Contatta Florame se hai dubbi su come procedere.\": \"Review the proposal in the conversation. Contact florame.ai if you\u2019re unsure how to proceed.\",\r\n    \"Per valutare come proseguire con la richiesta, contatta Florame.\": \"Contact florame.ai to discuss how to proceed with your request.\",\r\n    \"Note indirizzo\": \"Address notes\",\r\n    \"Torna ai confini della regione\": \"Return to the region boundary\",\r\n    \"Un fiorista locale verificato, con pagina e catalogo su Florame.\": \"A verified local florist with a page and catalogue on florame.ai.\",\r\n    \"Passa alla vista 2D\": \"Switch to 2D view\",\r\n    \"trascina su o gi\u00F9 per inclinare\": \"drag up or down to tilt\",\r\n    \"Entro nella citt\u00E0\": \"Entering the city\",\r\n    \"Vista 3D non disponibile\": \"3D view unavailable\",\r\n    \"Torna ai confini e riprova tra poco.\": \"Return to the boundary and try again shortly.\",\r\n    \"Passa alla vista 3D\": \"Switch to 3D view\",\r\n    \"Apri la scheda di\": \"Open details for\",\r\n    \"Chiudi scheda\": \"Close details\",\r\n    \"Pi\u00F9 su\": \"Move up\",\r\n    \"Pi\u00F9 gi\u00F9\": \"Move down\",\r\n    \"Trascina il tratto sull\u2019anteprima\": \"Drag the feature on the preview\",\r\n    \"Colore degli occhi\": \"Eye colour\",\r\n    \"Intensit\u00E0\": \"Intensity\",\r\n    \"Annulla modifica\": \"Cancel change\",\r\n    \"Non salvato \u00B7 riprova\": \"Not saved \u00B7 try again\",\r\n    \"Mago dei fiori\": \"Flower wizard\",\r\n    \"Nessun personaggio trovato\": \"No characters found\",\r\n    \"Cancella ricerca\": \"Clear search\",\r\n    \"Stella della disco\": \"Disco star\",\r\n    \"Bolla di generazione rimossa\": \"Creation bubble removed\",\r\n    \"Apri per riprovare\": \"Open to try again\",\r\n    \"Apri per controllare\": \"Open to check\",\r\n    \"Caricamento terminato\": \"Loading complete\",\r\n    \"Vai alle 2 proposte\": \"View both proposals\",\r\n    \"% - vai al caricamento\": \"% \u2014 view progress\",\r\n    \"Vai a vedere il tuo bouquet\": \"View your bouquet\",\r\n    \"Timeout stato generazione\": \"Checking creation progress timed out\",\r\n    \"Errore stato generazione\": \"Couldn\u2019t check creation progress\",\r\n    \"Timeout durante la generazione delle proposte\": \"Creating the proposals took too long\",\r\n    \"Errore generazione proposte\": \"Couldn\u2019t create the proposals\",\r\n    \"Non siamo riusciti a recuperare la generazione delle proposte\": \"We couldn\u2019t recover your proposals\",\r\n    \"Errore stato generazione proposte\": \"Couldn\u2019t check proposal progress\",\r\n    \"Errore creazione prodotto\": \"Couldn\u2019t create the product\",\r\n    \"Errore generazione bouquet\": \"Couldn\u2019t create the bouquet\",\r\n    \"Non siamo riusciti a recuperare la generazione del bouquet\": \"We couldn\u2019t recover your bouquet\",\r\n    \"Annulla generazione\": \"Cancel creation\",\r\n    \"Richiesta chiamata Florame \u00B7\": \"florame.ai call request \u00B7\",\r\n    \"Orari non comunicati\": \"Opening hours not provided\",\r\n    \"Impossibile aggiungere il prodotto al carrello.\": \"We couldn\u2019t add the product to your cart.\",\r\n    \"Guarda il percorso\": \"Get directions\",\r\n    \"I fiori di\": \"Flowers from\",\r\n    \"I fiori della tua citt\u00E0\": \"Flowers in your city\",\r\n    \"Una vetrina Florame per la tua zona. Dopo la richiesta cerchiamo un fiorista disponibile.\": \"A florame.ai shop for your area. Once you submit a request, we look for an available florist.\",\r\n    \"Bouquet e consegna sono confermati solo dopo l\u2019accettazione.\": \"Your bouquet and delivery are confirmed only once the request is accepted.\",\r\n    \"Non siamo riusciti a preparare il fiorista di riserva. Riprova.\": \"We couldn\u2019t prepare the backup florist. Please try again.\",\r\n    \"Caricamento account...\": \"Loading your account\u2026\",\r\n    \"Usa il login sicuro Shopify dell'app.\": \"Use the app\u2019s secure Shopify login.\",\r\n    \"Completa il login nella finestra sicura.\": \"Complete login in the secure window.\",\r\n    \"Login Shopify non configurato in questa build.\": \"Shopify login is not configured in this version.\",\r\n    \"Nessun ordine recente\": \"No recent orders\",\r\n    \"Google non si e aperto. Riprova.\": \"Google did not open. Please try again.\",\r\n    \"Accedi per collegare le notifiche al tuo account.\": \"Log in to link notifications to your account.\",\r\n    \"Token notifiche non disponibile. Riprova.\": \"Notifications could not be linked. Please try again.\",\r\n    \"Attiva il GPS nelle impostazioni del telefono.\": \"Enable location in your phone settings.\",\r\n    \"Consenti la posizione nelle impostazioni di Florame.\": \"Allow location access in the florame.ai app settings.\",\r\n    \"Orari in aggiornamento\": \"Updating opening hours\",\r\n    \"In aggiornamento\": \"Updating\",\r\n    \"Consegna locale\": \"Local delivery\",\r\n    \"Verifica il CAP\": \"Check postcode\",\r\n    \"Inserisci l'indirizzo per verificarla\": \"Enter the address to check\",\r\n    \", pi\u00F9 il CAP\": \", plus postcode\",\r\n    \", pi\u00F9 i CAP\": \", plus postcodes\",\r\n    \"Disponibile a\": \"Available in\",\r\n    \"prepara bouquet personalizzati con fiori disponibili e servizio locale tramite Florame.\": \"creates custom bouquets with available flowers and local service through florame.ai.\",\r\n    \"Fiori da riconfermare\": \"Flowers awaiting confirmation\",\r\n    \"Fasce in aggiornamento\": \"Updating time slots\",\r\n    \"Zona del fiorista\": \"Florist\u2019s service area\",\r\n    \"Florame cerca un fiorista nella zona per gestire la tua richiesta. Inserisci l\u2019indirizzo per verificare la fattibilit\u00E0.\": \"florame.ai looks for a florist in the area to handle your request. Enter the address to check availability.\",\r\n    \"Questa \u00E8 la zona in cui opera il fiorista. Inserisci il tuo indirizzo per verificare copertura e costi della consegna.\": \"This is the florist\u2019s service area. Enter your address to check delivery coverage and costs.\",\r\n    \"La disponibilit\u00E0 viene aggiornata dal negozio. Puoi scegliere la fascia prima di aggiungere il bouquet al carrello.\": \"The shop updates availability. Choose a time slot before adding the bouquet to your cart.\",\r\n    \"Modalit\u00E0\": \"Method\",\r\n    \"Consegna del fiorista\": \"Florist delivery\",\r\n    \"Chat con il fiorista\": \"Chat with the florist\",\r\n    \"Scrivi direttamente al fiorista per richieste sul bouquet, disponibilit\u00E0 o dettagli della consegna.\": \"Message the florist directly about your bouquet, availability or delivery details.\",\r\n    \"Messaggi Florame\": \"florame.ai Messages\",\r\n    \"La fascia scelta resta visibile nell\u2019ordine e al fiorista. Se serve coordinarsi, puoi scrivergli dalla chat Florame.\": \"Your selected time slot is shown in the order and to the florist. Use florame.ai chat if you need to coordinate.\",\r\n    \"Chat diretta con il fiorista\": \"Direct chat with the florist\",\r\n    \"Preparato dal fiorista\": \"Prepared by the florist\",\r\n    \"Fiori freschi\": \"Fresh flowers\",\r\n    \"Il bouquet viene preparato dal partner con i fiori disponibili. Eventuali sostituzioni mantengono stile, palette e valore dell\u2019ordine.\": \"The florist prepares your bouquet with available flowers. Any substitutions preserve the style, colours and value of your order.\",\r\n    \"A cura del fiorista\": \"Prepared by the florist\",\r\n    \"Info sul fiorista\": \"About the florist\",\r\n    \"Stiamo aggiornando i fiori.\": \"We\u2019re updating the flowers.\",\r\n    \"Non riesco ad aprire Dove e quando. Tocca per riprovare.\": \"We couldn\u2019t open Where and when. Tap to try again.\",\r\n    \"Apri le Stories di\": \"Open Stories from\",\r\n    \". Apri le Stories di\": \". Open Stories from\",\r\n    \"Scegli quali cookie facoltativi consentire. Puoi cambiare idea in ogni momento, anche rifiutandoli tutti.\": \"Choose which optional cookies to allow. You can change your mind at any time, including rejecting them all.\",\r\n    \"Usiamo cookie necessari per far funzionare Florame. Con il tuo consenso, noi e i nostri partner, incluso Shopify, usiamo anche cookie per personalizzare l\u2019esperienza, analizzare le visite e mostrarti pubblicit\u00E0. Puoi rifiutarli e continuare a fare acquisti.\": \"We use necessary cookies to run florame.ai. With your consent, we and our partners, including Shopify, also use cookies to personalise your experience, analyse visits and show advertising. You can reject them and continue shopping.\",\r\n    \"Accedi per seguire gli ordini, salvare gli indirizzi e ricevere assistenza pi\u00F9 velocemente.\": \"Log in to track orders, save addresses and get support faster.\",\r\n    \"Riapri il bouquet pi\u00F9 recente\": \"Reopen your latest bouquet\",\r\n    \"Strumenti Florame disponibili senza accesso\": \"florame.ai tools available without logging in\",\r\n    \"Il codice non \u00E8 corretto.\": \"The code is incorrect.\",\r\n    \"Il codice \u00E8 scaduto. Richiedine uno nuovo.\": \"The code has expired. Request a new one.\",\r\n    \"Troppi tentativi. Richiedi un nuovo codice.\": \"Too many attempts. Request a new code.\",\r\n    \"Con questa email \u00E8 gi\u00E0 stata pubblicata una recensione recente.\": \"A recent review has already been published with this email address.\",\r\n    \"Scrivi un titolo un po\u2019 pi\u00F9 chiaro.\": \"Please write a clearer title.\",\r\n    \"Raccontaci qualcosa in pi\u00F9: bastano almeno 20 caratteri.\": \"Tell us a little more: at least 20 characters.\",\r\n    \"Il file \u00E8 troppo grande.\": \"The file is too large.\",\r\n    \"Questo formato non \u00E8 supportato.\": \"This format is not supported.\",\r\n    \"Puoi allegare al massimo quattro file.\": \"You can attach up to four files.\",\r\n    \"Puoi allegare un solo video.\": \"You can attach one video.\",\r\n    \"Il periodo di modifica di sette giorni \u00E8 terminato.\": \"The seven-day editing period has ended.\",\r\n    \"Troppe richieste ravvicinate. Riprova tra qualche minuto.\": \"Too many requests. Try again in a few minutes.\",\r\n    \"Non siamo riusciti a completare l\u2019operazione. Riprova.\": \"We couldn\u2019t complete the action. Please try again.\",\r\n    \"La connessione sta impiegando troppo tempo. Riprova.\": \"The connection is taking too long. Please try again.\",\r\n    \"La recensione e gli allegati non saranno pi\u00F9 visibili.\": \"The review and attachments will no longer be visible.\",\r\n    \"Fiorista partner\": \"Partner florist\",\r\n    \"Recensioni di\": \"Reviews of\",\r\n    \"Apri lo storefront di Nino Fiori e Piante\": \"Open the Nino Fiori e Piante shop\",\r\n    \"Perfetto! Ti avviseremo appena iniziamo a consegnare l\u00EC \u2728\": \"You\u2019re all set! We\u2019ll let you know when we start delivering there \u2728\",\r\n    \"Ops, non siamo riusciti a salvare. Riprova tra poco.\": \"We couldn\u2019t save that. Please try again shortly.\",\r\n    \"Confronto prima e dopo\": \"Before and after comparison\",\r\n    \"Dopo: prodotto reale Florame\": \"After: real florame.ai bouquet\",\r\n    \"Prima: generazione AI\": \"Before: AI preview\",\r\n    \"Posizione cursore prima/dopo\": \"Before and after slider position\",\r\n    \"Azioni principali\": \"Main actions\",\r\n    \"Slider di confronto immagine prima e dopo\": \"Before and after image comparison slider\",\r\n    \"PRIMA (AI)\": \"BEFORE (AI)\",\r\n    \"DOPO (REALE)\": \"AFTER (REAL)\",\r\n    \"Il tuo account\": \"Your account\",\r\n    \"Attiva JavaScript per gestire il tuo account.\": \"Enable JavaScript to manage your account.\",\r\n    \"Inserisci la tua email e ti avviseremo quando \u201C\": \"Enter your email and we\u2019ll let you know when \u201C\",\r\n    \"\u201D torna disponibile.\": \"\u201D is available again.\",\r\n    \"Dove e quando non \u00E8 ancora pronto\": \"Where and when is not ready yet\",\r\n    \"Riprova tra un istante: non perdi nessuna scelta.\": \"Try again in a moment. Your choices are saved.\",\r\n    \"Richiesta non aggiunta\": \"Request not added\",\r\n    \"La connessione si \u00E8 interrotta prima del carrello. Riprova: non \u00E8 stato effettuato alcun addebito.\": \"The connection was interrupted before reaching the cart. Please try again. You have not been charged.\",\r\n    \"Il carrello non ha risposto. Riprova: non \u00E8 stato effettuato alcun addebito.\": \"The cart did not respond. Please try again. You have not been charged.\",\r\n    \"Fiorista selezionato:\": \"Selected florist:\",\r\n    \"Controllo temporaneamente non disponibile\": \"Check temporarily unavailable\",\r\n    \"Non confermiamo l\u2019acquisto finch\u00E9 catalogo, consegna e prezzo non sono verificati.\": \"Your purchase cannot be confirmed until the catalogue, delivery and price have been checked.\",\r\n    \"Riprova: offerta, consegna e prezzo devono essere confermati insieme.\": \"Try again. The offer, delivery and price must be confirmed together.\",\r\n    \"Scegli indirizzo, data e fascia per vedere le opzioni reali.\": \"Choose an address, date and time slot to see available options.\",\r\n    \"Ordinabile per questa consegna. Autorizzi al checkout e paghi solo se il fiorista accetta.\": \"Available to request for this delivery. Authorise payment at checkout; you pay only if the florist accepts.\",\r\n    \"Consegna disponibile per l\u2019indirizzo scelto.\": \"Delivery is available to the selected address.\",\r\n    \"Autorizzi il totale al checkout e paghi solo se il fiorista accetta.\": \"Authorise the total at checkout. You pay only if the florist accepts.\",\r\n    \"Confronta consegna, ritiro e tempi prima di scegliere.\": \"Compare delivery, pickup and timings before choosing.\",\r\n    \"Questa \u00E8 l\u2019opzione disponibile per il destinatario.\": \"This option is available for the recipient.\",\r\n    \"Scegli un altro momento\": \"Choose another time\",\r\n    \"Stiamo preparando il prezzo del fiorista\": \"We\u2019re preparing the florist\u2019s price\",\r\n    \"Fiori e consegna sono gi\u00E0 verificati. Riprova tra pochi secondi.\": \"Flowers and delivery have been checked. Try again in a few seconds.\",\r\n    \"La pubblicazione commerciale non \u00E8 completa. Riprova tra poco.\": \"The product is not ready to order yet. Try again shortly.\",\r\n    \"Inserisci l\u2019indirizzo del destinatario per vedere le opzioni reali.\": \"Enter the recipient\u2019s address to see available options.\",\r\n    \"Bouquet non pi\u00F9 disponibile\": \"Bouquet no longer available\",\r\n    \"Nessun fiorista disponibile per questa scelta\": \"No florist available for this option\",\r\n    \"Puoi ricrearne una variante con lo stesso stile.\": \"You can create a variation in the same style.\",\r\n    \"Cambia indirizzo o momento per vedere altre opzioni.\": \"Change the address or time to see other options.\",\r\n    \"non consegna qui\": \"does not deliver here\",\r\n    \"Confronta i fioristi Florame che coprono questo indirizzo.\": \"Compare florame.ai florists who cover this address.\",\r\n    \"Inserisci l\u2019indirizzo del destinatario per controllare la consegna.\": \"Enter the recipient\u2019s address to check delivery.\",\r\n    \"Inserisci l\u2019indirizzo del destinatario: troveremo il fiorista giusto.\": \"Enter the recipient\u2019s address and we\u2019ll find the right florist.\",\r\n    \"Consegna con\": \"Delivery by\",\r\n    \"Fiorista da individuare\": \"Finding the florist\",\r\n    \"Ricontrolla l\u2019indirizzo per associare in modo certo chi preparer\u00E0 e consegner\u00E0 il bouquet.\": \"Check the address again so we can confirm who will prepare and deliver your bouquet.\",\r\n    \"Consegna gestita da\": \"Delivery handled by\",\r\n    \"Disponibilit\u00E0 da riconfermare\": \"Availability needs confirmation\",\r\n    \"Il controllo live sta impiegando pi\u00F9 del previsto. Riprova prima di acquistare.\": \"The live check is taking longer than expected. Try again before ordering.\",\r\n    \"Non disponibile da\": \"Unavailable from\",\r\n    \"L\u2019indirizzo \u00E8 coperto, ma questo bouquet non \u00E8 realizzabile con lo stock attuale.\": \"The address is covered, but this bouquet cannot be made with the current stock.\",\r\n    \"Il fiorista consegna all\u2019indirizzo scelto.\": \"The florist delivers to the selected address.\",\r\n    \"Riprova: l\u2019acquisto resta bloccato finch\u00E9 offerta e consegna non sono verificate.\": \"Try again. Ordering remains blocked until the offer and delivery have been checked.\",\r\n    \"I tuoi bouquet\": \"Your bouquets\",\r\n    \"I preferiti sono salvati in questo browser. Accedi prima di creare un bouquet per ritrovare le tue creazioni anche sugli altri dispositivi.\": \"Favourites are saved in this browser. Log in before creating a bouquet to find your creations on your other devices too.\",\r\n    \"Mostra altri\": \"Show more\",\r\n    \"Lo sconto appare nel checkout.\": \"The discount appears at checkout.\",\r\n    \"I tuoi fiori. A modo tuo.\": \"Your flowers. Your way.\",\r\n    \"Un bouquet colorato con rose e fiori misti\": \"A colourful bouquet of roses and mixed flowers\",\r\n    \"Ogni dettaglio parte dalla tua idea.\": \"Every detail starts with your idea.\",\r\n    \"Tutto quello che ti serve sapere\": \"Everything you need to know\",\r\n    \"Fiori, ingredienti e anteprima AI\": \"Flowers, composition and AI preview\",\r\n    \"Consegna e ritiro\": \"Delivery and collection\",\r\n    \"Composizione non valida.\": \"Invalid composition.\",\r\n    \"Un fiore o colore non \u00E8 pi\u00F9 disponibile. Modifica la composizione.\": \"A flower or colour is no longer available. Edit the composition.\",\r\n    \"La quantit\u00E0 richiesta non \u00E8 pi\u00F9 disponibile.\": \"The requested quantity is no longer available.\",\r\n    \"La composizione supera 150 steli.\": \"The composition exceeds 150 stems.\",\r\n    \"Questo fiore\": \"This flower\",\r\n    \"\uD83E\uDE84 Genera il bouquet!\": \"\uD83E\uDE84 Create your bouquet!\",\r\n    \"Rimuovi questo fiore prima di generare il bouquet.\": \"Remove this flower before creating the bouquet.\",\r\n    \"Il fiorista riconfermer\u00E0 questo fiore prima del pagamento.\": \"The florist will confirm this flower before payment.\",\r\n    \"non \u00E8 disponibile attualmente per questa\": \"is currently unavailable for this\",\r\n    \"il colore\": \"the colour\",\r\n    \"Mostro i bouquet su richiesta.\": \"Showing bouquets available on request.\",\r\n    \"Questa versione non \u00E8 pi\u00F9 acquistabile\": \"This version is no longer available to buy\",\r\n    \"Per sicurezza non la aggiungiamo: puoi sceglierne una simile gi\u00E0 verificata.\": \"We can\u2019t safely add this version. Choose a similar bouquet that has been checked.\",\r\n    \"Questo bouquet \u00E8 terminato\": \"This bouquet is sold out\",\r\n    \"Tocca Notificami e ti avviseremo quando torna.\": \"Tap Notify me and we\u2019ll let you know when it\u2019s back.\",\r\n    \"Hai cambiato dove o quando ricevere il bouquet. Tocca di nuovo Aggiungi al carrello: useremo le nuove scelte.\": \"You changed where or when to receive the bouquet. Tap Add to cart again to use your new choices.\",\r\n    \"La richiesta non \u00E8 ancora inviata. Completa il checkout per inviarla al fiorista e seguirla nei Messaggi.\": \"Your request has not been sent yet. Complete checkout to send it to the florist and follow it in Messages.\",\r\n    \"\u00B7 scegli il ritiro nel carrello\": \"\u00B7 choose collection in the cart\",\r\n    \"\u00B7 ritiro da\": \"\u00B7 collection from\",\r\n    \"Questo bouquet \u00E8 appena terminato\": \"This bouquet has just sold out\",\r\n    \"Riprova tra un momento.\": \"Try again in a moment.\",\r\n    \"Il controllo sta impiegando troppo\": \"The check is taking longer than expected\",\r\n    \"Il bouquet \u00E8 ancora qui: tocca Aggiungi al carrello per riprovare.\": \"Your bouquet is still here. Tap Add to cart to try again.\",\r\n    \"Qui non \u00E8 disponibile ora\": \"Currently unavailable here\",\r\n    \"Puoi attivare Notificami direttamente dalla card.\": \"Select Notify me on the bouquet card.\",\r\n    \"Controlla la connessione e riprova.\": \"Check your connection and try again.\",\r\n    \"Prima di aggiungere il bouquet\": \"Before adding the bouquet\",\r\n    \"Preferiti temporaneamente non disponibili. Riprova.\": \"Favourites are temporarily unavailable. Please try again.\",\r\n    \"Stock aggiornato\": \"Stock updated\",\r\n    \"Notifica gi\u00E0 attiva\": \"Notification already enabled\",\r\n    \"Ti avviseremo quando questo fiorista potr\u00E0 prepararlo.\": \"We\u2019ll let you know when this florist can prepare it.\",\r\n    \"Riprova tra un momento. Le tue scelte restano qui.\": \"Try again in a moment. Your choices are saved.\",\r\n    \"Nessun bouquet con questi filtri\": \"No bouquets match these filters\",\r\n    \"Per ora nessun bouquet pronto\": \"No ready bouquets at the moment\",\r\n    \"Prova un altro prezzo o una composizione diversa.\": \"Try a different price or composition.\",\r\n    \"Non vediamo bouquet ordinabili in questa selezione. La disponibilit\u00E0 pu\u00F2 cambiare: controlla di nuovo pi\u00F9 tardi.\": \"No bouquets are available to order in this selection. Availability can change, so check again later.\",\r\n    \"Aggiorna disponibilit\u00E0\": \"Refresh availability\",\r\n    \"Disponibilit\u00E0 non aggiornata\": \"Availability could not be updated\",\r\n    \"Non riusciamo a verificare i bouquet ora. Riprova tra un momento.\": \"We can\u2019t check the bouquets right now. Try again in a moment.\",\r\n    \"Riprova tra un momento: non devi ricominciare.\": \"Try again in a moment. You won\u2019t need to start over.\",\r\n    \"I preferiti non si sono caricati\": \"Favourites could not be loaded\",\r\n    \"I bouquet salvati non sono stati modificati. Riprova tra un momento.\": \"Your saved bouquets have not changed. Try again in a moment.\",\r\n    \"La selezione \u00E8 cambiata\": \"The selection has changed\",\r\n    \"Aggiorna per vedere i bouquet scelti dal fiorista.\": \"Refresh to see the florist\u2019s selected bouquets.\",\r\n    \"Nessun bouquet in evidenza\": \"No featured bouquets\",\r\n    \"Il fiorista non ha scelto bouquet per questa sezione.\": \"The florist has not selected any bouquets for this section.\",\r\n    \"La selezione non si \u00E8 caricata\": \"The selection could not be loaded\",\r\n    \"I bouquet del fiorista sono ancora qui. Riprova tra un momento.\": \"The florist\u2019s bouquets are still here. Try again in a moment.\",\r\n    \"Trova fiorista\": \"Find a florist\",\r\n    \"Trova un fiorista che pu\u00F2 preparare questo bouquet\": \"Find a florist who can prepare this bouquet\",\r\n    \"Riprova tra un momento. I tuoi filtri restano qui.\": \"Try again in a moment. Your filters are saved.\",\r\n    \"Qui Florame non \u00E8 ancora arrivata. Intanto puoi esplorare e personalizzare questi bouquet.\": \"florame.ai is not available here yet. You can still explore and personalise these bouquets.\",\r\n    \"Prova un altro indirizzo per vedere i bouquet disponibili.\": \"Try another address to see available bouquets.\",\r\n    \"Nessun bouquet per questi filtri\": \"No bouquets match these filters\",\r\n    \"Intanto puoi esplorare altre composizioni.\": \"You can explore other compositions in the meantime.\",\r\n    \"Non abbiamo aggiornato la selezione. Intanto puoi esplorare questi bouquet.\": \"We couldn\u2019t update the selection. You can still explore these bouquets.\",\r\n    \"Nessun Paese trovato\": \"No countries found\",\r\n    \"non \u00E8 servita\": \"is not covered\",\r\n    \"non \u00E8 ancora servita\": \"is not covered yet\",\r\n    \"indirizzo incompleto\": \"incomplete address\",\r\n    \"seleziona un indirizzo\": \"select an address\",\r\n    \"scegli una via\": \"choose a street\",\r\n    \"Errore invio\": \"Couldn\u2019t send\",\r\n    \"Errore notifiche\": \"Notification error\",\r\n    \"Nessun risultato trovato\": \"No results found\",\r\n    \"Errore nel caricamento dei bouquet. Riprova pi\u00F9 tardi.\": \"We couldn\u2019t load the bouquets. Try again later.\",\r\n    \"Nessuna composizione salvata. Crea e salva il tuo primo bouquet!\": \"No compositions saved. Create and save your first bouquet!\",\r\n    \"Data non disponibile\": \"Date unavailable\",\r\n    \"Si \u00E8 verificato un errore\": \"Something went wrong\",\r\n    \"Si \u00E8 verificato un errore durante il caricamento dell'applicazione. Ricarica la pagina per riprovare.\": \"The app could not be loaded. Refresh the page to try again.\",\r\n    \"Timeout della richiesta\": \"The request timed out\",\r\n    \"Impossibile leggere il carrello\": \"We couldn\u2019t load the cart\",\r\n    \"Asteraceae \u00B7 margherite da fiorista\": \"Asteraceae \u00B7 florist\u2019s daisies\",\r\n    \"Acacia dealbata \u00B7 mimosa da fiorista\": \"Acacia dealbata \u00B7 florist\u2019s mimosa\",\r\n    \"1 fiorista\": \"1 florist\",\r\n    \"Data Consegna\": \"Delivery date\",\r\n    \"Indirizzo Consegna\": \"Delivery address\",\r\n    \"Telefono destinatario\": \"Recipient\u2019s phone number\",\r\n    \"Email destinatario\": \"Recipient\u2019s email\",\r\n    \"Messaggio Biglietto\": \"Card message\",\r\n    \"Disegno Biglietto\": \"Card drawing\",\r\n    \"Biglietto Personalizzato\": \"Personalised message card\",\r\n    \"Modalita biglietto\": \"Message card type\",\r\n    \"Font Biglietto\": \"Card font\",\r\n    \"Biglietto Preview URL\": \"Message card preview URL\",\r\n    \"Tipo Ordine\": \"Order type\",\r\n    \"Modalita Consegna\": \"Delivery method\",\r\n    \"Data Consegna (ISO)\": \"Delivery date (ISO)\",\r\n    \"Le novit\u00E0 di Florame\": \"What\u2019s new at florame.ai\",\r\n    \"Note brevi per clienti, partner e team: cosa cambia, quando e perch\u00E9.\": \"Updates for customers, florists and our team: what changed, when and why.\",\r\n    \"Preferiti\": \"Favourites\",\r\n    \"Benvenuto su Florame. Qui trovi offerte, tutorial e aggiornamenti utili.\": \"Welcome to florame.ai. Find offers, tutorials and useful updates here.\",\r\n    \"Benvenuto su Florame \uD83C\uDF38 Qui trovi offerte, tutorial e aggiornamenti utili. Per ricevere assistenza, apri la chat Assistenza: ti rispondiamo l\u00EC.\": \"Welcome to florame.ai \uD83C\uDF38 Find offers, tutorials and useful updates here. For help, open the Support chat. We\u2019ll reply there.\",\r\n    \"Tu\": \"You\",\r\n    \"Carta, nastro e decorazioni\": \"Wrapping, ribbon and decorations\",\r\n    \"Parliamone in chat\": \"Discuss in chat\",\r\n    \"Dettagli e prossimi passi\": \"Details and next steps\",\r\n    \"Pagamento autorizzato\": \"Payment authorised\",\r\n    \"Stato ufficiale\": \"Official status\",\r\n    \"Accedi con Shop\": \"Log in with Shop\",\r\n    \"Dettagli occhi\": \"Eye details\",\r\n    \". Trascina per spostare, oppure trascina sulla X o su Rimuovi per chiudere.\": \". Drag to move, or drag onto the X or Remove to close.\",\r\n    \"Carta\": \"Wrapping\",\r\n    \"carta\": \"wrapping\",\r\n    \"Dettagli utili da condividere\": \"Useful details to share\",\r\n    \"Dettagli da condividere con l\u2019assistenza\": \"Details to share with support\",\r\n    \"Copia dettagli\": \"Copy details\",\r\n    \"Dettagli copiati. Incollali nella chat di assistenza.\": \"Details copied. Paste them into the support chat.\",\r\n    \"Profilo Shopify collegato\": \"Shopify profile linked\",\r\n    \"Aggiorna Florame per gestire i permessi dalle impostazioni.\": \"Update florame.ai to manage permissions in Settings.\",\r\n    \"Carta kraft naturale\": \"Natural kraft paper\",\r\n    \"Personalizza stile e dettagli.\": \"Personalise the style and details.\",\r\n    \"Riprendi i contenuti in evidenza\": \"Resume featured content\",\r\n    \"Risponde subito\": \"Replies immediately\",\r\n    \"Risponde in ~\": \"Replies in ~\",\r\n    \"Esplora altri negozi\": \"Explore other shops\",\r\n    \"Riprendi\": \"Resume\",\r\n    \"Acquisto verificato\": \"Verified purchase\",\r\n    \"Dati personali\": \"Personal details\",\r\n    \"Rimuovi allegato\": \"Remove attachment\",\r\n    \"Parliamone.\": \"Let\u2019s talk.\",\r\n    \"Parliamone\": \"Let\u2019s talk\",\r\n    \"pronto online\": \"ready online\",\r\n    \"Solo acquisti verificati\": \"Verified purchases only\",\r\n    \"Impostazioni gioco\": \"Game settings\",\r\n    \"Pronto?\": \"Ready?\",\r\n    \"Demo non disponibile / Demo unavailable. Reload this page.\": \"Demo unavailable. Reload this page.\",\r\n    \"Citt\u00E0 demo\": \"Demo city\",\r\n    \"Bottega in fiore \u00B7 dati importati\": \"Bottega in fiore \u00B7 data imported\",\r\n    \"Come funziona il biglietto?\": \"How does the message card work?\",\r\n    \"+ Aggiungi un biglietto regalo\": \"+ Add a card message\",\r\n    \"1 x Viola chiaro Bellflower stem\": \"1 x Light purple Bellflower stem\",\r\n    \"Consegna in ritardo\": \"Late delivery\",\r\n    \"Ordine non ricevuto\": \"Order not received\",\r\n    \"Fiori danneggiati\": \"Damaged flowers\",\r\n    \"Biglietto o extra mancante\": \"Missing message card or extra\",\r\n    \"Cosa \u00E8 successo?\": \"What happened?\",\r\n    \"Raccontaci cosa \u00E8 successo e cosa ti serve\": \"Tell us what happened and how we can help\",\r\n    \"Descrivi il problema\": \"Describe the problem\",\r\n    \"Invia segnalazione\": \"Report a problem\",\r\n    \"Il team florame.ai vede il problema e la conversazione di questo ordine.\": \"The florame.ai team can see your report and this order\u2019s conversation.\",\r\n    \"Accedi di nuovo per inviare la segnalazione.\": \"Sign in again to send your report.\",\r\n    \"Invio non riuscito. Riprova.\": \"Your report could not be sent. Please try again.\",\r\n    \"Nuovo su florame.ai\": \"New on florame.ai\",\r\n    \"Cambia lingua\": \"Change language\",\r\n    \"Assistenza florame.ai\": \"florame.ai support\",\r\n    \"Aiuto, domande frequenti e contatti\": \"Help, frequently asked questions and contacts\",\r\n    \"Da leggere\": \"Unread\",\r\n    \"Filtra conversazioni\": \"Filter conversations\",\r\n    \"Dettaglio conversazione\": \"Conversation details\",\r\n    \"Scrivi\": \"Write\",\r\n    \"Conversazione\": \"Conversation\",\r\n    \"Scrivi un messaggio\": \"Write a message\",\r\n    \"Segnala un problema\": \"Report a problem\",\r\n    \"A refined harmonious harmony featuring a lush white peony enveloped by a fresh green santini chrysanthemum and the gentle curve of a soft light-purple bellflower. This arrangement brings serene textures and modern elegance to any room.\": \"An elegant arrangement featuring a lush white peony, a fresh green Santini chrysanthemum and a delicate light-purple bellflower. Serene textures bring modern elegance to any room.\",\r\n    \"Florame.ai - Basta scommesse al buio.\": \"florame.ai \u2014 Send flowers with confidence.\",\r\n    \"Foto Onesta\": \"Real bouquet photo\",\r\n    \"Orario Spaccato\": \"On-time delivery\",\r\n    \"Foto reale pre-partenza\": \"Real photo before dispatch\",\r\n    \"Controllo disponibilita...\": \"Checking availability\u2026\",\r\n    \"Stock e laboratorio aggiornati in tempo reale.\": \"Stock and florist availability updated in real time.\",\r\n    \"Community live\": \"Live community\",\r\n    \"Ispirazioni recenti, senza rubare la scena\": \"Fresh inspiration, quietly in the background\",\r\n    \"La verita che i grandi marchi cercano di nasconderti\": \"What large flower brands do not tell you\",\r\n    \"Noi abbiamo eliminato gli intermediari. Abbiamo eliminato le bugie.\": \"We removed the middlemen and made the process transparent.\",\r\n    \"Foto esca\": \"Misleading catalogue photo\",\r\n    \"Certezza matematica del risultato, senza sforzo.\": \"Confidence in the result, without the effort.\",\r\n    \"Design unico guidato dall'AI\": \"A unique design with AI guidance\",\r\n    \"Certificato fotografico\": \"Photo confirmation\",\r\n    \"Protocollo di Scarto Spietato\": \"Strict flower selection process\",\r\n    \"Niente bot. Niente scaricabarile.\": \"Real people who take responsibility.\",\r\n    \"Garanzia Orario Spaccato\": \"On-time delivery guarantee\",\r\n    \"Garanzia Foto Onesta\": \"Real bouquet photo guarantee\",\r\n    \"La nostra storia, senza filtri\": \"Our story, unfiltered\",\r\n    \"Due ragazzi stanchi di vedere le persone farsi fregare nel giorno piu importante.\": \"Two people tired of seeing customers let down on the days that matter most.\",\r\n    \"// Risposte chiare a dubbi legittimi\": \"Clear answers to common questions\",\r\n    \"Nel checkout appare un riquadro bianco. Scrivi con dito, mouse o pennino: catturiamo il tratto esatto e lo stampiamo su cartoncino di qualita in busta Kraft A6.\": \"A blank writing area appears at checkout. Write with your finger, mouse or stylus. We capture your handwriting and print it on quality card, with an A6 kraft envelope.\",\r\n    \"Meccanismi Florame\": \"How florame.ai works\",\r\n    \"Scegli lingua\": \"Choose language\",\r\n    \"Lingua: Italiano\": \"Language: Italian\",\r\n    \"Entra in contatto\": \"Get in touch\",\r\n    \"HARDWARE KIT\": \"HARDWARE KIT\",\r\n    \"Ecosistema\": \"An ecosystem\",\r\n    \"Completo\": \"that has it all\",\r\n    \"Hardware, Software & E-commerce.\": \"Hardware, software and e-commerce.\",\r\n    \"Sito Personale\": \"Your own website\",\r\n    \"Telecamera con\": \"Camera with\",\r\n    \"Intelligenza Artificiale\": \"artificial intelligence\",\r\n    \"Basta sostituzioni dell'ultimo minuto.\": \"No more last-minute substitutions.\",\r\n    \"Tablet Gestionale\": \"Management tablet\",\r\n    \"Massima organizzazione.\": \"Everything organised.\",\r\n    \"Stampante\": \"Printer\",\r\n    \"Basta un semplice click dal tablet.\": \"Just one tap on the tablet.\",\r\n    \"su Florame a \u20AC50\": \"on florame.ai for \u20AC50\",\r\n    \"Sceglie occasione, budget e palette cromatica: l'assistente propone composizioni pronte da rifinire.\": \"They choose the occasion, budget and colour palette. The assistant suggests arrangements they can refine.\",\r\n    \"Un'unica\": \"One\",\r\n    \"interfaccia semplice e completa\": \"simple, complete interface\",\r\n    \"Il\": \"The\",\r\n    \"tecnica precisa con\": \"with precise instructions and\",\r\n    \"foto di riferimento.\": \"reference photos.\",\r\n    \"Niente sostituzioni, niente stress.\": \"No substitutions, no stress.\",\r\n    \"Attivazione\": \"Activation\",\r\n    \"Configuriamo\": \"We set up\",\r\n    \"hardware con\": \"with\",\r\n    \"Plug & Play\": \"Plug and play\",\r\n    \"Colleghi\": \"Connect\",\r\n    \"e potrai gestire facilmente gli ordini\": \"and easily manage your orders\",\r\n    \"Vendita\": \"Start selling\",\r\n    \"Riceverai\": \"You receive\",\r\n    \"riprodurre\": \"recreate\",\r\n    \"spedire\": \"dispatch the bouquet\",\r\n    \"Piani partner\": \"Partner plans\",\r\n    \"Mensile\": \"Monthly\",\r\n    \"Trimestrale\": \"Quarterly\",\r\n    \"Annuale\": \"Annual\",\r\n    \"Invece di 567\u20AC\": \"Instead of \u20AC567\",\r\n    \"Risparmi 218\u20AC rispetto al mensile.\": \"Save \u20AC218 compared with monthly billing.\",\r\n    \"Campagne locali gestite da noi.\": \"Local campaigns managed by us.\",\r\n    \"3 mesi reali di test\": \"Three full months to try it\",\r\n    \"Avvio assistito\": \"Help getting started\",\r\n    \"Senza impegno\": \"No commitment\",\r\n    \"/ mese\": \"/ month\",\r\n    \"Attivo in pochi giorni\": \"Ready in a few days\",\r\n    \"-38% sul mensile\": \"38% less than monthly billing\",\r\n    \"/ anno\": \"/ year\",\r\n    \"Invece di 2.268\u20AC\": \"Instead of \u20AC2,268\",\r\n    \"Risparmi 869\u20AC rispetto al mensile.\": \"Save \u20AC869 compared with monthly billing.\",\r\n    \"Scelgo l'annuale\": \"Choose annual billing\",\r\n    \"Candidatura partner\": \"Partner application\",\r\n    \"Piano selezionato\": \"Selected plan\",\r\n    \"349\u20AC / 3 mesi\": \"\u20AC349 / 3 months\",\r\n    \"oppure chiamarci direttamente ai numeri:\": \"or call us directly:\",\r\n    \"Devo inserire io i prodotti e le foto sul sito?\": \"Do I need to add the products and photos myself?\",\r\n    \"Cosa succede se decido di disdire? Ci sono penali?\": \"What happens if I cancel? Are there any penalties?\",\r\n    \"Naviga tra i piani\": \"Browse plans\",\r\n    \"Vantaggi piano trimestrale\": \"Quarterly plan benefits\",\r\n    \"Vantaggi piano mensile\": \"Monthly plan benefits\",\r\n    \"Vantaggi piano annuale\": \"Annual plan benefits\",\r\n    \"\u2190 Indietro\": \"\u2190 Back\",\r\n    \"Grazie!\": \"Thank you!\",\r\n    \"Il futuro del tuo negozio.\": \"The future of your flower shop.\",\r\n    \"Potenzia il tuo business con\": \"Grow your business with\",\r\n    \"la tecnologia\": \"the technology of\",\r\n    \"a Roma\": \"in Rome\",\r\n    \"Vedi lo storefront di Nino\": \"Visit Nino\u2019s shop page\",\r\n    \"PARTI GRATIS\": \"START FOR FREE\",\r\n    \"Pagina, Hub, richieste e crescita.\": \"Your shop page, management hub, requests and growth.\",\r\n    \"Lavorando meglio.\": \"By working smarter.\",\r\n    \"Sito Premium\": \"Premium website\",\r\n    \"eventuale promozione\": \"any promotion\",\r\n    \"ripartizione trasparente\": \"a transparent breakdown\",\r\n    \"Da telefono, tablet o computer gestisci\": \"From your phone, tablet or computer, manage\",\r\n    \"Richieste chiare\": \"Clear requests\",\r\n    \"foto di riferimento\": \"reference photos\",\r\n    \"Online in 3 step\": \"Online in 3 steps\",\r\n    \"Imposti\": \"Set up\",\r\n    \"1. Importi i dati\": \"1. Import your details\",\r\n    \"Contatto facoltativo\": \"Optional contact details\",\r\n    \"Prossimo passo\": \"Next step\",\r\n    \"Chiamata conoscitiva\": \"Introductory call\",\r\n    \"EMAIL AZIENDALE\": \"BUSINESS EMAIL\",\r\n    \"Fatti ricontattare\": \"Request a callback\",\r\n    \"Posso aggiungere collaboratori?\": \"Can I add team members?\",\r\n    \"Logo Florame\": \"florame.ai logo\",\r\n    \"Mockup Sito Premium\": \"Premium website preview\",\r\n    \"tu@tuonegozio.it\": \"you@yourshop.com\",\r\n    \"Il tuo tempo\": \"Your time\",\r\n    \"conta\": \"matters\",\r\n    \"Ci impegniamo a consegnare nella\": \"We aim to deliver within the\",\r\n    \"fascia concordata\": \"agreed time window\",\r\n    \". In caso di ritardo,\": \". If delivery is late,\",\r\n    \"verifichiamo l\u2019accaduto e valutiamo con te la soluzione pi\u00F9 adatta.\": \"we look into what happened and work with you to find the right solution.\",\r\n    \"Come interveniamo\": \"How we help\",\r\n    \"Benvenuto in Florame\": \"Welcome to florame.ai\",\r\n    \"Footer florame.ai\": \"florame.ai footer\",\r\n    \"Fuggi dal marcio del delivery di\": \"Leave unreliable delivery behind when ordering\",\r\n    \"fiori online. Scegli la certezza.\": \"flowers online. Choose peace of mind.\",\r\n    \"I grandi siti vendono truffe e illusioni: intascano commissioni enormi, ti mostrano cataloghi finti e costringono i fioristi a rifilarti gli avanzi.\": \"Large flower websites sell an illusion: high commissions, misleading catalogues and florists left to make do with whatever remains.\",\r\n    \"florame.ai distrugge questo sistema:\": \"florame.ai changes the way it works:\",\r\n    \"verifica la disponibilit\u00E0 dei fiori in tempo reale, crea ci\u00F2 che vuoi e ottieni la\": \"check flower availability in real time, create your own design and get\",\r\n    \"consegna garantita al 100%.\": \"100% guaranteed delivery.\",\r\n    \"Voglio acquistare un bouquet senza rischiare\": \"Order a bouquet with confidence\",\r\n    \"Verifica la consegna\": \"Check delivery\",\r\n    \"garantita al 100%\": \"100% guaranteed\",\r\n    \"Verifica copertura\": \"Check coverage\",\r\n    \"consegna garantita\": \"guaranteed delivery\",\r\n    \"Verifica\": \"Check\",\r\n    \"Suggerimenti indirizzo\": \"Address suggestions\",\r\n    \"Verifico disponibilita reale\": \"Checking actual availability\",\r\n    \"Controllo copertura e laboratorio piu vicino.\": \"Checking coverage and the nearest florist.\",\r\n    \"Lista attesa copertura\": \"Delivery coverage waiting list\",\r\n    \"Zona in attivazione\": \"Coming to your area\",\r\n    \"Lascia la tua\": \"Leave your\",\r\n    \"Presto saremo disponibili in tutta Italia.\": \"We are working to expand across Italy.\",\r\n    \"Ti avviseremo quando disponibili in\": \"We will let you know when we are available in\",\r\n    \"questa zona\": \"this area\",\r\n    \"La tua e-mail\": \"Your email\",\r\n    \"Avvisami\": \"Notify me\",\r\n    \"Nel frattempo...\": \"In the meantime\u2026\",\r\n    \"Dove siamo disponibili ora\": \"Where we are available now\",\r\n    \"Vai al sito\": \"Explore the website\",\r\n    \"Prova un altro indirizzo\": \"Try another address\",\r\n    \"Mappa copertura Florame\": \"florame.ai coverage map\",\r\n    \"Controlli mappa\": \"Map controls\",\r\n    \"Europa\": \"Europe\",\r\n    \"Navigazione mappa\": \"Map navigation\",\r\n    \"Zoom avanti\": \"Zoom in\",\r\n    \"Zoom indietro\": \"Zoom out\",\r\n    \"Sposta mappa\": \"Move map\",\r\n    \"Sposta mappa in alto\": \"Move map up\",\r\n    \"Sposta mappa a sinistra\": \"Move map left\",\r\n    \"Sposta mappa a destra\": \"Move map right\",\r\n    \"Sposta mappa in basso\": \"Move map down\",\r\n    \"Carico confini geografici...\": \"Loading map boundaries\u2026\",\r\n    \"Vista attiva\": \"Current view\",\r\n    \"Regioni coperte: 0\": \"Regions covered: 0\",\r\n    \"Fioristi partner\": \"Partner florists\",\r\n    \"nell'area selezionata\": \"in the selected area\",\r\n    \"Clicca un paese per vedere le regioni\": \"Select a country to see its regions\",\r\n    \"Torna alla mail\": \"Back to email\",\r\n    \"Consegna garantita al 100%\": \"100% guaranteed delivery\",\r\n    \"garantita\": \"guaranteed\",\r\n    \"al 100%\": \"100%\",\r\n    \"Ciascun fiorista seleziona le disponibilit\u00E0 in tempo reale, il sito si aggiorna di conseguenza.\": \"Each florist updates availability in real time, and the website reflects those changes.\",\r\n    \"Ricevi la foto del bouquet prima che venga spedito.\": \"Receive a photo of your bouquet before it leaves the shop.\",\r\n    \"Slot orario\": \"Delivery time slot\",\r\n    \"Scegli lo slot che preferisci. Consegna puntuale.\": \"Choose your preferred time slot for an on-time delivery.\",\r\n    \"RECENSIONI VERIFICATE\": \"VERIFIED EXPERIENCES\",\r\n    \"Cosa pensano del nostro servizio\": \"What our customers think\",\r\n    \"Le esperienze dei clienti con florame.ai, dal nostro sistema di recensioni.\": \"Customer experiences with florame.ai, from our own review system.\",\r\n    \"Vedi tutte le recensioni Florame\": \"Read all florame.ai reviews\",\r\n    \"Recensioni dei clienti Florame\": \"florame.ai customer reviews\",\r\n    \"Leggi le recensioni su florame.ai\": \"Read florame.ai reviews\",\r\n    \"Caricamento recensioni\u2026\": \"Loading reviews\u2026\",\r\n    \"Le recensioni non sono disponibili al momento. Riprova oppure apri tutte le recensioni.\": \"Reviews are unavailable right now. Try again or open all reviews.\",\r\n    \"Le prime esperienze saranno pubblicate qui.\": \"The first experiences will appear here.\",\r\n    \"Leggi tutte le recensioni\": \"Read all reviews\",\r\n    \"Recensione storica Judge.me\": \"Historical Judge.me review\",\r\n    \"Il vecchio metodo \u00E8\": \"The old way is\",\r\n    \"una scatola al buio\": \"a leap in the dark\",\r\n    \"una scatola al buio.\": \"a leap in the dark.\",\r\n    \"marcio\": \"rotten\",\r\n    \"marcio.\": \"rotten.\",\r\n    \"una truffa\": \"a rip-off\",\r\n    \"da brividi\": \"a nightmare\",\r\n    \"per i cretini\": \"a fool\u2019s game\",\r\n    \"Il nostro metodo \u00E8 sicurezza.\": \"Our way gives you peace of mind.\",\r\n    \"Con i grandi siti\": \"With large flower websites\",\r\n    \"Cataloghi standardizzati e foto generiche\": \"Standard catalogues and generic photos\",\r\n    \"Fiori non disponibili o di bassa qualit\u00E0\": \"Unavailable or poor-quality flowers\",\r\n    \"Nessuna foto prima della consegna\": \"No photo before delivery\",\r\n    \"Consegne mai avvenute o non puntuali\": \"Missed or late deliveries\",\r\n    \"Assenza del servizio clienti o non disponibile\": \"Missing or unavailable customer support\",\r\n    \"Fioristi sfruttati e messi in difficolt\u00E0\": \"Florists under pressure and underpaid\",\r\n    \"Interesse per il profitto, non alla buona riuscita del gesto\": \"Profit takes priority over your thoughtful gesture\",\r\n    \"Creazione di un bouquet personalizzato su Florame.ai\": \"Creating a custom bouquet on florame.ai\",\r\n    \"Con florame.ai\": \"With florame.ai\",\r\n    \"Disponibilit\u00E0 reale aggiornata direttamente dai fioristi\": \"Real availability updated directly by florists\",\r\n    \"Fiori selezionati accuratamente dai fioristi\": \"Flowers carefully selected by florists\",\r\n    \"Foto del bouquet prima della spedizione\": \"A photo of your bouquet before dispatch\",\r\n    \"Consegna puntuale garantita\": \"Guaranteed on-time delivery\",\r\n    \"Servizio clienti sempre disponibile per qualsiasi informazione e aiuto\": \"Customer support available whenever you need help\",\r\n    \"Massima cura per gli ordini ricevuti\": \"Every order handled with care\",\r\n    \"Come Florame ti garantisce una\": \"How florame.ai helps you make\",\r\n    \"figura pazzesca\": \"a wonderful impression\",\r\n    \"(Senza sforzo)\": \"(Without the effort)\",\r\n    \"Ti offriamo la\": \"We give you\",\r\n    \"certezza matematica del risultato.\": \"confidence in the result.\",\r\n    \"Creazione di un bouquet unico guidata dall'intelligenza artificiale Florame\": \"Creating a unique bouquet with florame.ai\u2019s AI guidance\",\r\n    \"Il tuo Design Unico\": \"Your unique design\",\r\n    \"(Guidato dall'AI)\": \"(With AI guidance)\",\r\n    \"Nessun catalogo fantoccio.\": \"No misleading catalogue.\",\r\n    \"Crei il tuo bouquet personalizzando ogni dettaglio\": \"Create your bouquet and personalise every detail\",\r\n    \"assistito dalla nostra AI.\": \"with help from our AI.\",\r\n    \"Generiamo l'anteprima\": \"We generate a preview\",\r\n    \"esatta della tua idea. I nostri fioristi la useranno come guida per comporre il mazzo.\": \"of your idea. Our florists use it as a guide to create your bouquet.\",\r\n    \"Dalla tua idea al bouquet reale\": \"From your idea to a real bouquet\",\r\n    \"Fiorista Florame che fotografa il bouquet reale prima della consegna\": \"A florame.ai florist photographing the real bouquet before delivery\",\r\n    \"Il Certificato Fotografico di Trasparenza\u2122\": \"The Photo Transparency Certificate\u2122\",\r\n    \"Appena il bouquet \u00E8 pronto, ti mandiamo la foto\": \"As soon as your bouquet is ready, we send a photo\",\r\n    \"reale del mazzo, sul telefono. Vedi esattamente cosa hai pagato, prima che venga consegnato.\": \"of the real flowers to your phone. See exactly what you paid for before delivery.\",\r\n    \"Vedi prima. Consegni senza sorprese.\": \"See it first. Send it without surprises.\",\r\n    \"Messaggio Florame per confermare o riprogrammare l'orario di consegna\": \"A florame.ai message to confirm or reschedule delivery\",\r\n    \"Sistema Logistico \u201CZero Fiori Morti\u201D\u2122\": \"The \u201CNo Wasted Flowers\u201D\u2122 delivery system\",\r\n    \"dei commenti sui vecchi brand parla di consegne fallite o ritardi disastrosi.\": \"of comments about traditional brands mention failed deliveries or serious delays.\",\r\n    \"Con noi?\": \"With us?\",\r\n    \"Tu decidi quando spedire\": \"You choose when to send it\",\r\n    \", e noi mandiamo un SMS o una mail al destinatario:\": \", and we send the recipient a text or email:\",\r\n    \"Messaggio al destinatario\": \"Message to the recipient\",\r\n    \"C'\u00E8 un regalo per te. Confermi l'orario o preferisci spostarlo?\": \"There is a gift for you. Would you like to confirm the time or reschedule?\",\r\n    \"Possono riprogrammare in un click.\": \"They can reschedule in one click.\",\r\n    \"Zero stress per te, tragitti a vuoto azzerati, fiori freschissimi.\": \"Less stress for you, no wasted trips and fresh flowers.\",\r\n    \"Un regalo riuscito, anche nella logistica\": \"A thoughtful gift, thoughtfully delivered\",\r\n    \"Fiorista Florame che seleziona a mano gli steli migliori per un bouquet\": \"A florame.ai florist selecting the best stems by hand\",\r\n    \"QUALIT\u00C0 SENZA COMPROMESSI\": \"QUALITY WITHOUT COMPROMISE\",\r\n    \"Il nostro Protocollo di \u201CScarto Spietato\u201D\": \"Our strict flower selection process\",\r\n    \"Ogni stelo viene ispezionato a mano.\": \"Every stem is inspected by hand.\",\r\n    \"Scartiamo tutto ci\u00F2 che non \u00E8 impeccabile.\": \"We remove anything that is not up to standard.\",\r\n    \"Solo fiori freschi, sani e pronti a durare.\": \"Only fresh, healthy flowers that are ready to last.\",\r\n    \"Niente compromessi. Mai.\": \"No compromises. Ever.\",\r\n    \"Se non \u00E8 da \u201Cwow\u201D, non parte.\": \"If it does not wow us, it does not leave.\",\r\n    \"Foto\": \"Photo\",\r\n    \"onesta\": \"honesty\",\r\n    \"Ti inviamo la\": \"We send you a\",\r\n    \"foto reale del bouquet\": \"photo of the real bouquet\",\r\n    \"prima della consegna. Se non ti piace,\": \"before delivery. If you are not happy with it,\",\r\n    \"lo rifacciamo noi\": \"we remake it\",\r\n    \". Senza costi, senza storie.\": \". No extra cost, no hassle.\",\r\n    \"Zero sorprese\": \"No surprises\",\r\n    \"Vedi esattamente cosa sta per partire.\": \"See exactly what is about to leave the shop.\",\r\n    \"Domande\": \"Frequently asked\",\r\n    \"frequenti\": \"questions\",\r\n    \"Risposte rapide alle vostre domande pi\u00F9 frequenti.\": \"Quick answers to your most common questions.\",\r\n    \"Posso vedere il bouquet prima che venga consegnato?\": \"Can I see the bouquet before delivery?\",\r\n    \"S\u00EC, ti inviamo la foto reale del bouquet prima della consegna. Se non ti piace, lo rifacciamo noi.\": \"Yes. We send a photo of your actual bouquet before delivery. If you are not happy with it, we remake it.\",\r\n    \"\u00C8 disponibile la consegna in giornata?\": \"Is same-day delivery available?\",\r\n    \"S\u00EC, negli slot disponibili per il tuo indirizzo. Tu scegli quando, noi prepariamo e consegniamo senza passaggi inutili.\": \"Yes, when a time slot is available for your address. Choose the time, and we prepare and deliver your bouquet.\",\r\n    \"E se il destinatario non \u00E8 in casa?\": \"What if the recipient is not at home?\",\r\n    \"Gestiamo la consegna per evitare viaggi a vuoto e fiori lasciati a morire. L'obiettivo \u00E8 far arrivare il bouquet quando serve.\": \"We coordinate delivery to avoid wasted trips and flowers left unattended. Our aim is to get your bouquet there when it is needed.\",\r\n    \"I fiori sono sempre freschi?\": \"Are the flowers always fresh?\",\r\n    \"Usiamo fiori disponibili e selezionati dal fiorista. Se uno stelo non \u00E8 all'altezza, non parte.\": \"We use available flowers selected by the florist. Any stem that does not meet our standards stays out of your bouquet.\",\r\n    \"Posso aggiungere un biglietto personalizzato?\": \"Can I add a personal message card?\",\r\n    \"S\u00EC. Puoi aggiungere un messaggio elegante e personale, anche con effetto scritto a mano.\": \"Yes. Add a personal message, with a handwritten finish if you like.\",\r\n    \"Call to action finale\": \"Create your bouquet\",\r\n    \"Pronto a fare una figura pazzesca?\": \"Ready to make their day?\",\r\n    \"Crea ora il tuo bouquet con AI. Consegna programmata e garantita.\": \"Create your bouquet with AI. Scheduled, guaranteed delivery.\",\r\n    \"Crea in 60 secondi | Consegna oraria garantita\": \"Create in 60 seconds | Guaranteed delivery time slot\",\r\n    \"LA NOSTRA GARANZIA, NERO SU BIANCO\": \"OUR GUARANTEE, IN BLACK AND WHITE\",\r\n    \"Se qualcosa va storto,\": \"If something goes wrong,\",\r\n    \"rimediamo noi.\": \"we put it right.\",\r\n    \"Se facciamo una cazzata noi,\": \"If we mess up,\",\r\n    \"paghiamo noi.\": \"we pay for it.\",\r\n    \"Punto.\": \"Simple.\",\r\n    \"Tre promesse concrete\": \"Three clear promises\",\r\n    \", prima e dopo la consegna.\": \", before and after delivery.\",\r\n    \"Le nostre promesse\": \"Our promises\",\r\n    \", la miglior assicurazione\": \", your peace of mind\",\r\n    \"Assistenza\": \"Support\",\r\n    \"sempre\": \"always\",\r\n    \"Per qualunque problema, la nostra\": \"Whatever the problem, our\",\r\n    \"assistenza clienti \u00E8 sempre disponibile\": \"customer support team is always available\",\r\n    \". Prima, durante e dopo la consegna.\": \". Before, during and after delivery.\",\r\n    \"Aiuto reale\": \"Real help\",\r\n    \"Qualunque cosa succeda, trovi qualcuno che se ne occupa.\": \"Whatever happens, someone is here to help.\",\r\n    \"CHI SIAMO\": \"ABOUT US\",\r\n    \"La nostra storia,\": \"Our story,\",\r\n    \"senza filtri.\": \"unfiltered.\",\r\n    \"Siamo solo due ragazzi stanchi di vedere le persone farsi fregare nel giorno pi\u00F9 importante.\": \"We are two people who got tired of seeing customers let down on the days that matter most.\",\r\n    \"CAPITOLO 01\": \"CHAPTER 01\",\r\n    \"Il bar\": \"The caf\u00E9\",\r\n    \"florame.ai non \u00E8 nata in un ufficio, n\u00E9 durante una riunione tra imprenditori. La nostra storia \u00E8 iniziata a Roma, dentro un bar di quartiere.\": \"florame.ai did not start in an office or a business meeting. Our story began in a neighbourhood caf\u00E9 in Rome.\",\r\n    \"Leonardo viveva praticamente l\u00EC: durante il giorno studiava, la sera lavorava dietro al bancone come bartender. Matteo era un cliente abituale: a volte veniva per studiare, altre per passare la serata in compagnia.\": \"Leonardo practically lived there: studying by day and working behind the bar by night. Matteo was a regular, sometimes coming to study and sometimes to spend the evening with friends.\",\r\n    \"A forza di parlare, siamo diventati amici. Ci confrontavamo su tutto: la quotidianit\u00E0, il lavoro, l\u2019universit\u00E0. Parlavamo delle idee che ci frullavano in testa, dei progetti che avevamo gi\u00E0 provato a costruire e di quelli per i quali aspettavano ancora il momento giusto.\": \"We became friends through countless conversations about everyday life, work and university. We shared ideas, projects we had already tried to build and others still waiting for the right moment.\",\r\n    \"Entrambi avevamo la stessa ambizione: mettere a frutto ci\u00F2 che stavamo imparando per creare qualcosa di davvero utile, capace di risolvere un problema concreto della vita di tutti i giorni.\": \"We shared an ambition: to use what we were learning to build something useful that solved a real, everyday problem.\",\r\n    \"CAPITOLO 02\": \"CHAPTER 02\",\r\n    \"Il problema\": \"The problem\",\r\n    \"vero\": \"behind it all\",\r\n    \"La vera svolta \u00E8 arrivata quando abbiamo iniziato a parlare del lavoro di Matteo.\": \"The turning point came when we started talking about Matteo\u2019s work.\",\r\n    \"Cresciuto fin da piccolo nel negozio di fiori di famiglia, Fiori e Piante di Nino, conosceva bene un meccanismo che chi acquista fiori online non vede: la maggior parte dei siti utilizza un catalogo standardizzato, senza sapere che cosa il fiorista abbia davvero a disposizione in negozio.\": \"Having grown up in his family\u2019s flower shop, Fiori e Piante di Nino, he knew a problem most online flower buyers never see: websites use standard catalogues without knowing what flowers the florist actually has in stock.\",\r\n    \"Quando un cliente ordina un bouquet, l\u2019ordine viene affidato a un fiorista che, se non ha i fiori richiesti, \u00E8 costretto ad arrangiarsi: sostituzioni dell\u2019ultimo minuto, quasi mai comunicate al cliente, oppure ore perse al telefono per cercare una soluzione.\": \"When an order reaches a florist who does not have the requested flowers, they have to improvise: last-minute substitutions, rarely explained to the customer, or hours on the phone looking for a solution.\",\r\n    \"Il risultato \u00E8 sempre lo stesso: da una parte il fiorista, costretto a lavorare sotto pressione; dall\u2019altra il cliente, che nella migliore delle ipotesi riceve un prodotto diverso da quello scelto.\": \"The result is familiar: a florist working under pressure and a customer who, at best, receives something different from what they chose.\",\r\n    \"Un\u2019inefficienza che rovina un gesto pensato con cura per una persona a cui si vuole bene.\": \"A broken process that spoils a thoughtful gesture for someone you care about.\",\r\n    \"CAPITOLO 03\": \"CHAPTER 03\",\r\n    \"La decisione\": \"Our decision\",\r\n    \"Abbiamo unito l\u2019esperienza di Matteo nel settore floreale alle competenze tecniche di entrambi e abbiamo deciso di opporci a questo sistema distorto, costruendo un modo pi\u00F9 trasparente, preciso e umano di acquistare e vendere fiori online.\": \"We combined Matteo\u2019s flower industry experience with our technical skills to build a more transparent, reliable and human way to buy and sell flowers online.\",\r\n    \"Nasce cos\u00EC florame.ai, frutto di un\u2019analisi profonda delle criticit\u00E0 di questo settore, vissute sulla pelle sia da chi acquista sia da chi lavora ogni giorno in negozio.\": \"That is how florame.ai began: by examining the problems in this industry through the experience of customers and the people working in flower shops every day.\",\r\n    \"La nostra missione \u00E8 liberare questo mercato dalla pura speculazione e restituirgli cura dei dettagli, assistenza e precisione. Vogliamo ridare il giusto valore ai gesti.\": \"Our mission is to bring care, support and precision back to buying flowers, and give thoughtful gestures the attention they deserve.\",\r\n    \"Non consideriamo i fiori semplici prodotti da spedire. Trattiamo ogni singolo ordine con lo stesso rispetto, la stessa attenzione e la stessa delicatezza che metteremmo nel fare un regalo a una persona a noi cara.\": \"Flowers are more than a parcel to deliver. We treat every order with the respect and care we would put into a gift for someone we love.\",\r\n    \"I fondatori di Florame\": \"The founders of florame.ai\",\r\n    \"Matteo Awad, cofondatore di Florame\": \"Matteo Awad, co-founder of florame.ai\",\r\n    \"Leonardo Paiella, cofondatore di Florame\": \"Leonardo Paiella, co-founder of florame.ai\",\r\n    \"Scorri per conoscere il team\": \"Swipe to meet the team\",\r\n    \"Le vostre esperienze\": \"Your experiences\",\r\n    \"Valutazione di Florame\": \"florame.ai rating\",\r\n    \"su 5\": \"out of 5\",\r\n    \"La vostra valutazione\": \"Your rating\",\r\n    \"Esperienze di\": \"Experiences from\",\r\n    \"Valutazione\": \"Rating\",\r\n    \"Ogni esperienza conta.\": \"Every experience matters.\",\r\n    \"La fiducia, in chiaro.\": \"Trust, explained.\",\r\n    \"Pubblicate anche le critiche?\": \"Do you publish critical reviews too?\",\r\n    \"Posso correggere la recensione?\": \"Can I edit my review?\",\r\n    \"1 di 3 \u00B7 Verifica\": \"1 of 3 \u00B7 Verification\",\r\n    \"tu@esempio.it\": \"you@example.com\",\r\n    \"Inserisci le 6 cifre ricevute. Scadono tra 15 minuti.\": \"Enter the six-digit code we sent you. It expires in 15 minutes.\",\r\n    \"3 di 3 \u00B7 Recensione\": \"3 of 3 \u00B7 Review\",\r\n    \"Nome pubblico\": \"Public name\",\r\n    \"Es. Giulia R.\": \"e.g. Julia R.\",\r\n    \"facoltativa\": \"optional\",\r\n    \"Es. Roma\": \"e.g. Rome\",\r\n    \"Titolo\": \"Title\",\r\n    \"Cosa ha funzionato? Cosa possiamo migliorare?\": \"What went well? What could we improve?\",\r\n    \"Di cosa vuoi parlare?\": \"What would you like to talk about?\",\r\n    \"facoltativo\": \"optional\",\r\n    \"Creazione\": \"Creation\",\r\n    \"Chiarezza\": \"Clarity\",\r\n    \"Aggiungi foto o video\": \"Add photos or a video\",\r\n    \"Fino a 4 file, massimo un video di 30 secondi.\": \"Up to 4 files, including one video of up to 30 seconds.\",\r\n    \"Pubblica la recensione\": \"Publish review\",\r\n    \"Ritira la recensione\": \"Withdraw review\",\r\n    \"Navigazione footer\": \"Footer navigation\",\r\n    \"Crea il mio negozio\": \"Create my shop\",\r\n    \"Cosa ottieni\": \"What you get\",\r\n    \"Costi e guadagni\": \"Costs and earnings\",\r\n    \"La nostra storia\": \"Our story\",\r\n    \"Provalo senza vincoli\": \"Try it with no commitment\",\r\n    \"Diventa partner\": \"Become a partner\",\r\n    \"Chi siamo\": \"About us\",\r\n    \"Accedi all\u2019Hub\": \"Sign in to hub.florame.ai\",\r\n    \"Contattaci\": \"Contact us\",\r\n    \"Centro assistenza\": \"Help centre\",\r\n    \"Termini di servizio\": \"Terms of service\",\r\n    \"Rimborsi e reclami\": \"Refunds and complaints\",\r\n    \"Esplora i bouquet\": \"Explore bouquets\",\r\n    \"Vai al carrello\": \"Go to basket\",\r\n    \"Lascia una recensione\": \"Leave a review\",\r\n    \"Novit\u00E0 di florame.ai\": \"What\u2019s new at florame.ai\",\r\n    \"florame.ai sui social\": \"florame.ai on social media\",\r\n    \"florame.ai su Instagram\": \"florame.ai on Instagram\",\r\n    \"florame.ai su TikTok\": \"florame.ai on TikTok\",\r\n    \"florame.ai su Facebook\": \"florame.ai on Facebook\",\r\n    \"florame.ai su YouTube\": \"florame.ai on YouTube\"\r\n  });\r\n  Object.keys(TEXT).forEach(function (key) {\r\n    TEXT[key] = TEXT[key].replace(/\\bFlorame(?:\\.ai)?\\b(?! STP)/gi, 'florame.ai');\r\n  });\r\n  // END reviewed English copy\r\n\r\n  var PATTERNS = [\r\n    [/^(\\d+) stelle$/i, function (_, count) { return count + (count === '1' ? ' star' : ' stars'); }],\r\n    [/^\u00A9\\s*(\\d{4})\\s+florame\\.ai\\. Tutti i diritti riservati\\.$/i, '\u00A9 $1 florame.ai. All rights reserved.'],\r\n    [/^Versione storefront Florame (v\\.[\\d.]+)$/i, 'florame.ai storefront version $1'],\r\n    [/^(\\d+)\\s+fiorist[ai]\\s+da esplorare\\.$/i, function (_, count) { return count + (count === '1' ? ' florist to explore.' : ' florists to explore.'); }],\r\n    [/^1 florists to explore\\.$/i, '1 florist to explore.'],\r\n    [/^(\\d{1,2})\\s+(gennaio|febbraio|marzo|aprile|maggio|giugno|luglio|agosto|settembre|ottobre|novembre|dicembre)\\s+(\\d{4})$/i, function (_, day, month, year) {\r\n      var months = {gennaio:'January',febbraio:'February',marzo:'March',aprile:'April',maggio:'May',giugno:'June',luglio:'July',agosto:'August',settembre:'September',ottobre:'October',novembre:'November',dicembre:'December'};\r\n      return day + ' ' + months[month.toLowerCase()] + ' ' + year;\r\n    }],\r\n    [/^(\\d+)\\s+nuov[oi]\\s+messagg(?:io|i)$/i, function (_, count) { return count + (count === '1' ? ' new message' : ' new messages'); }],\r\n    [/^(\\d+)\\s+fiorist[ai]\\s+(recent[ei]|salvat[oi]|con ritiro|selezionat[oi])$/i, function (_, count, kind) { return count + ' ' + ({recente:'recent',recenti:'recent',salvato:'saved',salvati:'saved','con ritiro':'pickup',selezionato:'selected',selezionati:'selected'}[kind.toLowerCase()]) + (count === '1' ? ' florist' : ' florists'); }],\r\n    [/^(\\d+)\\s+ordin[ei] verificat[oi]$/i, function (_, count) { return count + (count === '1' ? ' verified order' : ' verified orders'); }],\r\n    [/^(\\d+)\\s+stel[oi]$/i, function (_, count) { return count + (count === '1' ? ' stem' : ' stems'); }],\r\n    [/^(\\d+)\\s+or[ae]\\s+fa$/i, function (_, count) { return count + (count === '1' ? ' hour ago' : ' hours ago'); }],\r\n    [/^(\\d+)\\s+giorn[oi]\\s+fa$/i, function (_, count) { return count + (count === '1' ? ' day ago' : ' days ago'); }],\r\n    [/^Ordine\\s+([#\\d][\\w#-]*)$/i, 'Order $1'],\r\n    [/^Disponibile fino al\\s+(.+)$/i, 'Available until $1'],\r\n    [/^Valido fino al\\s+(.+)$/i, 'Valid until $1'],\r\n    [/^Risposta entro\\s+(.+)$/i, 'Reply by $1'],\r\n    [/^Invia messaggio a\\s+(.+)$/i, 'Message $1'],\r\n    [/^Apri le Stories di\\s+(.+)$/i, 'Open Stories from $1'],\r\n    [/^Continua con (.+)$/i, 'Continue with $1'],\r\n    [/^Consegna a (.+)$/i, 'Delivery to $1'],\r\n    [/^Cambia indirizzo di consegna:\\s*(.+)$/i, 'Change delivery address: $1'],\r\n    [/^Torna all[\u2019']inizio di (.+)$/i, 'Back to the start of $1'],\r\n    [/^CAP:\\s*(\\d{5})$/i, 'Postal code: $1'],\r\n    [/^CAP\\s*(\\d{5})$/i, 'Postal code $1'],\r\n    [/^Ritiro in negozio presso (.+)$/i, 'Store pickup at $1'],\r\n    [/^Ci dispiace, il CAP\\s+(\\d{5})\\s+non (?:\u00E8|e) ancora coperto dal servizio\\.?$/i, 'Sorry, postal code $1 is not covered by our service yet.'],\r\n    [/^Ci dispiace,\\s+(.+?)\\s+non (?:\u00E8|e) disponibile attualmente per questa (.+?)\\.?$/i, 'Sorry, $1 is currently unavailable for this $2.'],\r\n    [/^Il CAP\\s+(\\d{5})\\s+non (?:\u00E8|e) ancora coperto dal servizio\\.?$/i, 'Postal code $1 is not covered by our service yet.'],\r\n    [/^Tentativo di riconnessione\\.\\.\\.\\s*\\((\\d+)\\/(\\d+)\\)$/i, 'Reconnecting... ($1/$2)'],\r\n    [/^Non puoi generare il bouquet perch\u00E9 contiene fiori non disponibili:\\s*(.+)$/i, 'You cannot generate the bouquet because it contains unavailable flowers: $1'],\r\n    [/^Non puoi generare il bouquet perche contiene fiori non disponibili:\\s*(.+)$/i, 'You cannot generate the bouquet because it contains unavailable flowers: $1'],\r\n    [/^Ciao\\s+(.+?)!\\s*\uD83D\uDC4B?$/i, 'Hello $1!'],\r\n    [/^(\\d+)\\s+Creati$/i, '$1 created'],\r\n    [/^(\\d+)\\s+bouquet$/i, '$1 bouquets'],\r\n    [/^Indirizzo\\s+(\\d+)$/i, 'Address $1'],\r\n    [/^Gestisci Indirizzi\\s*\\((\\d+)\\)$/i, 'Manage addresses ($1)'],\r\n    [/^Mostra ordini precedenti\\s*\\((\\d+)\\)$/i, 'Show previous orders ($1)'],\r\n    [/^Ordine Annullato il:\\s*(.+)$/i, 'Order canceled on: $1'],\r\n    [/^Avanzamento generazione proposte\\s+(\\d+)%$/i, 'Proposal generation progress $1%'],\r\n    [/^Totale:\\s*(.+)$/i, 'Total: $1'],\r\n    [/^Similarit(?:\u00E0|a):\\s*(.+)$/i, 'Similarity: $1'],\r\n    [/^Errore:\\s*(.+)$/i, 'Error: $1'],\r\n    [/^(.+)\\s+\\(Opzionale\\)$/i, '$1 (optional)'],\r\n    [/^Modifica (.+)$/i, 'Edit $1'],\r\n    [/^Aggiungi (.+)$/i, 'Add $1']\r\n  ];\r\n\r\n  var TOKEN_TRANSLATIONS = [\r\n    ['Rosa chiaro', 'Light pink'],\r\n    ['rosa chiaro', 'light pink'],\r\n    ['Rosa chiara', 'Light pink'],\r\n    ['rosa chiara', 'light pink'],\r\n    ['Rosa antico', 'Dusty pink'],\r\n    ['rosa antico', 'dusty pink'],\r\n    ['Rosa cipria', 'Blush pink'],\r\n    ['rosa cipria', 'blush pink'],\r\n    ['Rosa pastello', 'Pastel pink'],\r\n    ['rosa pastello', 'pastel pink'],\r\n    ['Arancione', 'Orange'],\r\n    ['arancione', 'orange'],\r\n    ['Giallo', 'Yellow'],\r\n    ['giallo', 'yellow'],\r\n    ['Rosso', 'Red'],\r\n    ['rosso', 'red'],\r\n    ['Azzurro', 'Light blue'],\r\n    ['azzurro', 'light blue'],\r\n    ['Celeste', 'Sky blue'],\r\n    ['celeste', 'sky blue'],\r\n    ['Turchese', 'Turquoise'],\r\n    ['turchese', 'turquoise'],\r\n    ['Blu', 'Blue'],\r\n    ['blu', 'blue'],\r\n    ['Viola', 'Purple'],\r\n    ['viola', 'purple'],\r\n    ['Lilla', 'Lilac'],\r\n    ['lilla', 'lilac'],\r\n    ['Lavanda', 'Lavender'],\r\n    ['lavanda', 'lavender'],\r\n    ['Fucsia', 'Fuchsia'],\r\n    ['fucsia', 'fuchsia'],\r\n    ['Magenta', 'Magenta'],\r\n    ['magenta', 'magenta'],\r\n    ['Corallo', 'Coral'],\r\n    ['corallo', 'coral'],\r\n    ['Pesca', 'Peach'],\r\n    ['pesca', 'peach'],\r\n    ['Salmone', 'Salmon'],\r\n    ['salmone', 'salmon'],\r\n    ['Verde', 'Green'],\r\n    ['verde', 'green'],\r\n    ['Crema', 'Cream'],\r\n    ['crema', 'cream'],\r\n    ['Avorio', 'Ivory'],\r\n    ['avorio', 'ivory'],\r\n    ['Beige', 'Beige'],\r\n    ['beige', 'beige'],\r\n    ['Marrone', 'Brown'],\r\n    ['marrone', 'brown'],\r\n    ['Bordeaux', 'Burgundy'],\r\n    ['bordeaux', 'burgundy'],\r\n    ['Borgogna', 'Burgundy'],\r\n    ['borgogna', 'burgundy'],\r\n    ['Nero', 'Black'],\r\n    ['nero', 'black'],\r\n    ['Grigio', 'Gray'],\r\n    ['grigio', 'gray'],\r\n    ['Grigia', 'Gray'],\r\n    ['grigia', 'gray'],\r\n    ['Argento', 'Silver'],\r\n    ['argento', 'silver'],\r\n    ['Argentato', 'Silver'],\r\n    ['argentato', 'silver'],\r\n    ['Oro', 'Gold'],\r\n    ['oro', 'gold'],\r\n    ['Dorato', 'Golden'],\r\n    ['dorato', 'golden'],\r\n    ['Champagne', 'Champagne'],\r\n    ['champagne', 'champagne'],\r\n    ['Multicolore', 'Multicolor'],\r\n    ['multicolore', 'multicolor'],\r\n    ['Tessuto', 'Fabric'],\r\n    ['tessuto', 'fabric'],\r\n    ['Misti', 'Mixed'],\r\n    ['misti', 'mixed'],\r\n    ['Misto', 'Mixed'],\r\n    ['misto', 'mixed'],\r\n    ['Nastro', 'Ribbon'],\r\n    ['nastro', 'ribbon'],\r\n    ['Rafia', 'Raffia'],\r\n    ['rafia', 'raffia'],\r\n    ['Naturale', 'Natural'],\r\n    ['naturale', 'natural'],\r\n    ['Bianco', 'White'],\r\n    ['bianco', 'white'],\r\n    ['Carta Kraft', 'Kraft paper'],\r\n    ['giorno precedente', 'previous day'],\r\n    ['Giorno precedente', 'Previous day'],\r\n    ['Luned\u00EC', 'Monday'],\r\n    ['luned\u00EC', 'monday'],\r\n    ['Lunedi', 'Monday'],\r\n    ['lunedi', 'monday'],\r\n    ['Marted\u00EC', 'Tuesday'],\r\n    ['marted\u00EC', 'tuesday'],\r\n    ['Martedi', 'Tuesday'],\r\n    ['martedi', 'tuesday'],\r\n    ['Mercoled\u00EC', 'Wednesday'],\r\n    ['mercoled\u00EC', 'wednesday'],\r\n    ['Mercoledi', 'Wednesday'],\r\n    ['mercoledi', 'wednesday'],\r\n    ['Gioved\u00EC', 'Thursday'],\r\n    ['gioved\u00EC', 'thursday'],\r\n    ['Giovedi', 'Thursday'],\r\n    ['giovedi', 'thursday'],\r\n    ['Venerd\u00EC', 'Friday'],\r\n    ['venerd\u00EC', 'friday'],\r\n    ['Venerdi', 'Friday'],\r\n    ['venerdi', 'friday'],\r\n    ['Sabato', 'Saturday'],\r\n    ['sabato', 'saturday'],\r\n    ['Domenica', 'Sunday'],\r\n    ['domenica', 'sunday'],\r\n    ['Gennaio', 'January'],\r\n    ['gennaio', 'january'],\r\n    ['Febbraio', 'February'],\r\n    ['febbraio', 'february'],\r\n    ['Marzo', 'March'],\r\n    ['marzo', 'march'],\r\n    ['Aprile', 'April'],\r\n    ['aprile', 'april'],\r\n    ['Maggio', 'May'],\r\n    ['maggio', 'may'],\r\n    ['Giugno', 'June'],\r\n    ['giugno', 'june'],\r\n    ['Luglio', 'July'],\r\n    ['luglio', 'july'],\r\n    ['Agosto', 'August'],\r\n    ['agosto', 'august'],\r\n    ['Settembre', 'September'],\r\n    ['settembre', 'september'],\r\n    ['Ottobre', 'October'],\r\n    ['ottobre', 'october'],\r\n    ['Novembre', 'November'],\r\n    ['novembre', 'november'],\r\n    ['Dicembre', 'December'],\r\n    ['dicembre', 'december']\r\n  ];\r\n\r\n  var TOKEN_JOIN_WORDS_EN = TOKEN_TRANSLATIONS\r\n    .map(function (entry) { return entry[1]; })\r\n    .filter(function (value, index, list) { return value && list.indexOf(value) === index; })\r\n    .sort(function (a, b) { return b.length - a.length; })\r\n    .map(escapeRegex)\r\n    .join('|');\r\n\r\n  var TOKEN_JOIN_WORDS_IT = TOKEN_TRANSLATIONS\r\n    .map(function (entry) { return entry[0]; })\r\n    .filter(function (value, index, list) { return value && list.indexOf(value) === index; })\r\n    .sort(function (a, b) { return b.length - a.length; })\r\n    .map(escapeRegex)\r\n    .join('|');\r\n\r\n  var TOKEN_JOIN_LEFT_EN = new RegExp('(?:^|[^\\\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF])(?:' + TOKEN_JOIN_WORDS_EN + ')$', 'i');\r\n  var TOKEN_JOIN_RIGHT_EN = new RegExp('^(?:' + TOKEN_JOIN_WORDS_EN + ')(?=$|[^\\\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF])', 'i');\r\n  var TOKEN_JOIN_LEFT_IT = new RegExp('(?:^|[^\\\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF])(?:' + TOKEN_JOIN_WORDS_IT + ')$', 'i');\r\n  var TOKEN_JOIN_RIGHT_IT = new RegExp('^(?:' + TOKEN_JOIN_WORDS_IT + ')(?=$|[^\\\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF])', 'i');\r\n\r\n  var TEXT_CANONICAL = {};\r\n  var TEXT_REVERSE_CANONICAL = {};\r\n  Object.keys(TEXT).forEach(function (key) {\r\n    TEXT_CANONICAL[canonicalKey(key)] = TEXT[key];\r\n    var reverseKey = canonicalKey(TEXT[key]);\r\n    if (reverseKey && reverseKey !== canonicalKey(key) && !TEXT_REVERSE_CANONICAL[reverseKey]) {\r\n      TEXT_REVERSE_CANONICAL[reverseKey] = key;\r\n    }\r\n  });\r\n\r\n  var textOriginals = new WeakMap();\r\n  var attrOriginals = new WeakMap();\r\n  var textWrites = new WeakMap();\r\n  var attributeWrites = new WeakMap();\r\n  function writeTranslatedText(node, value) {\r\n    if (node.nodeValue === value) return;\r\n    textWrites.set(node, value);\r\n    node.nodeValue = value;\r\n  }\r\n  function writeTranslatedAttribute(node, attr, value) {\r\n    if ((node.getAttribute(attr) || '') === value) return;\r\n    var writes = attributeWrites.get(node) || {};\r\n    writes[attr] = value;\r\n    attributeWrites.set(node, writes);\r\n    node.setAttribute(attr, value);\r\n  }\r\n  var currentLanguage = resolveLanguage();\r\n  var observer = null;\r\n  var earlyPassCompleted = false;\r\n  var isApplying = false;\r\n  // Ancestor selectors are shared within one synchronous translation pass only.\r\n  // Never retain them across DOM moves, class changes or language changes.\r\n  var ancestorMatchCache = null;\r\n  var pendingNodes = [];\r\n  var pendingNodeSet = typeof WeakSet !== 'undefined' ? new WeakSet() : null;\r\n  var scheduled = false;\r\n  var dynamicTranslations = loadDynamicTranslations();\r\n  var dynamicSkipped = {};\r\n  var dynamicQueue = {};\r\n  var dynamicTimer = null;\r\n  var dynamicSaveTimer = null;\r\n  var dynamicInFlight = false;\r\n  var dynamicRetryAt = 0;\r\n  var dynamicProductInFlight = 0;\r\n  var translationPill = null;\r\n  var translationPillShowTimer = null;\r\n  var translationPillHideTimer = null;\r\n  var productLocaleRedirecting = false;\r\n\r\n  function markBootReady() {\r\n    try {\r\n      var root = document.documentElement;\r\n      if (window.__florameI18nBootFallback) {\r\n        window.clearTimeout(window.__florameI18nBootFallback);\r\n        window.__florameI18nBootFallback = null;\r\n      }\r\n      root.classList.remove('florame-i18n-boot-pending');\r\n      root.classList.remove('florame-i18n-boot-timeout');\r\n      root.classList.add('florame-i18n-ready');\r\n      root.setAttribute('data-florame-i18n-ready', '1');\r\n    } catch (_) {}\r\n  }\r\n\r\n  function normalize(value) {\r\n    return String(value == null ? '' : value).replace(/\\s+/g, ' ').trim();\r\n  }\r\n\r\n  function canonicalKey(value) {\r\n    return normalize(value)\r\n      .toLowerCase()\r\n      .replace(/[\u2019\u2018`\u00B4]/g, \"'\")\r\n      .replace(/[\u201C\u201D]/g, '\"')\r\n      .replace(/\\u00a0/g, ' ')\r\n      .replace(/&amp;/g, '&');\r\n  }\r\n\r\n  function escapeRegex(value) {\r\n    return String(value).replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\r\n  }\r\n\r\n  function preserveWhitespace(original, translated) {\r\n    var lead = String(original).match(/^\\s*/)[0] || '';\r\n    var trail = String(original).match(/\\s*$/)[0] || '';\r\n    return lead + translated + trail;\r\n  }\r\n\r\n  function loadDynamicTranslations() {\r\n    if (window.FlorameTranslationCache) return Object.create(null);\r\n    try {\r\n      var parsed = JSON.parse(localStorage.getItem(CONFIG.dynamicCacheKey) || '{}');\r\n      if (!parsed || typeof parsed !== 'object') return {};\r\n      var out = {};\r\n      Object.keys(parsed).slice(-CONFIG.dynamicCacheLimit).forEach(function (key) {\r\n        if (key && typeof parsed[key] === 'string') out[key] = parsed[key];\r\n      });\r\n      return out;\r\n    } catch (_) {\r\n      return {};\r\n    }\r\n  }\r\n\r\n  function saveDynamicTranslations() {\r\n    if (dynamicSaveTimer) return;\r\n    dynamicSaveTimer = window.setTimeout(function () {\r\n      dynamicSaveTimer = null;\r\n    try {\r\n      var keys = Object.keys(dynamicTranslations);\r\n      if (keys.length > CONFIG.dynamicCacheLimit) {\r\n        var limited = {};\r\n        keys.slice(-CONFIG.dynamicCacheLimit).forEach(function (key) {\r\n          limited[key] = dynamicTranslations[key];\r\n        });\r\n        dynamicTranslations = limited;\r\n      }\r\n      localStorage.setItem(CONFIG.dynamicCacheKey, JSON.stringify(dynamicTranslations));\r\n    } catch (_) {}\r\n    }, 150);\r\n  }\r\n\r\n  function rememberDynamicTranslation(source, translated) {\r\n    var key = canonicalKey(source);\r\n    var value = normalize(translated);\r\n    if (!key || !value || canonicalKey(value) === key) return false;\r\n    dynamicTranslations[key] = value;\r\n    if (window.FlorameTranslationCache) window.FlorameTranslationCache.remember(source, value, { endpoint: CONFIG.translationEndpoint });\r\n    else saveDynamicTranslations();\r\n    return true;\r\n  }\r\n\r\n  function rememberDynamicSkip(source) {\r\n    var key = canonicalKey(source);\r\n    if (!key) return;\r\n    dynamicSkipped[key] = true;\r\n  }\r\n\r\n  // Tokens are static dictionary entries. Reuse their compiled boundaries\r\n  // across text nodes and both language directions.\r\n  var standaloneTokenPatterns = new Map();\r\n  function replaceStandaloneToken(value, token, replacement) {\r\n    var pattern = standaloneTokenPatterns.get(token);\r\n    if (!pattern) {\r\n      pattern = new RegExp('(^|[^\\\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF])' + escapeRegex(token) + '(?=$|[^\\\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF])', 'g');\r\n      standaloneTokenPatterns.set(token, pattern);\r\n    }\r\n    pattern.lastIndex = 0;\r\n    return String(value).replace(pattern, '$1' + replacement);\r\n  }\r\n\r\n  function normalizeTokenJoins(value, leftPattern, rightPattern, connectorPattern, andWord, orWord) {\r\n    return String(value).replace(connectorPattern, function (match, connector, offset, source) {\r\n      var left = source.slice(0, offset);\r\n      var right = source.slice(offset + match.length);\r\n      if (!leftPattern.test(left) || !rightPattern.test(right)) return match;\r\n      return /^o(?:r)?$/i.test(connector) ? ' ' + orWord + ' ' : ' ' + andWord + ' ';\r\n    });\r\n  }\r\n\r\n  function translateTokenText(key) {\r\n    var next = key;\r\n    TOKEN_TRANSLATIONS.forEach(function (entry) {\r\n      next = replaceStandaloneToken(next, entry[0], entry[1]);\r\n    });\r\n    return next !== key ? normalizeTokenJoins(next, TOKEN_JOIN_LEFT_EN, TOKEN_JOIN_RIGHT_EN, /\\s+(e|o)\\s+/gi, 'and', 'or') : '';\r\n  }\r\n\r\n  function restoreItalianTokenText(key) {\r\n    var next = key;\r\n    TOKEN_TRANSLATIONS.forEach(function (entry) {\r\n      next = replaceStandaloneToken(next, entry[1], entry[0]);\r\n    });\r\n    return next !== key ? normalizeTokenJoins(next, TOKEN_JOIN_LEFT_IT, TOKEN_JOIN_RIGHT_IT, /\\s+(and|or)\\s+/gi, 'e', 'o') : '';\r\n  }\r\n\r\n  // Static dictionary/pattern results are immutable for this page. Keep misses\r\n  // too; API translations remain outside this bounded, in-memory memo.\r\n  var textKeyMemo = new Map();\r\n  function translateTextKey(key) {\r\n    if (textKeyMemo.has(key)) return textKeyMemo.get(key);\r\n    var result = translateTextKeyUncached(key);\r\n    if (textKeyMemo.size >= 1024) textKeyMemo.clear();\r\n    textKeyMemo.set(key, result);\r\n    return result;\r\n  }\r\n  function translateFlowerLabel(key) {\r\n    var match = key.match(/^(roselline|rosellina|rose|peonie|peonia|gigli|giglio|gerbere|gerbera|margherite|margherita|tulipani|tulipano|garofani|garofano|girasoli|girasole|crisantemi|crisantemo|lisianthus|statice|iris|mimosa)\\s+(.+)$/i);\r\n    if (!match) return '';\r\n    var colors = {bianco:'White',bianca:'White',bianchi:'White',bianche:'White',rosa:'Pink','rosa chiaro':'Light pink','rosa chiara':'Light pink','rosa chiari':'Light pink','rosa chiare':'Light pink','rosa antico':'Dusty pink','rosa cipria':'Blush pink',rosso:'Red',rossa:'Red',rossi:'Red',rosse:'Red',giallo:'Yellow',gialla:'Yellow',gialli:'Yellow',gialle:'Yellow',arancione:'Orange',arancioni:'Orange',fucsia:'Fuchsia',fuchsia:'Fuchsia',viola:'Purple',verde:'Green',verdi:'Green',crema:'Cream',avorio:'Ivory',blu:'Blue',azzurro:'Light blue',azzurri:'Light blue',misti:'Mixed',miste:'Mixed'};\r\n    var color = colors[match[2].toLowerCase()];\r\n    if (!color) return '';\r\n    var flowers = {roselline:'roses (50 cm)',rosellina:'rose (50 cm)',rose:'roses',peonie:'peonies',peonia:'peony',gigli:'lilies',giglio:'lily',gerbere:'gerberas',gerbera:'gerbera',margherite:'daisies',margherita:'daisy',tulipani:'tulips',tulipano:'tulip',garofani:'carnations',garofano:'carnation',girasoli:'sunflowers',girasole:'sunflower',crisantemi:'chrysanthemums',crisantemo:'chrysanthemum',lisianthus:'lisianthus',statice:'statice',iris:'iris',mimosa:'mimosa'};\r\n    return color + ' ' + flowers[match[1].toLowerCase()];\r\n  }\r\n\r\n  function translateTextKeyUncached(key) {\r\n    if (TEXT[key]) return TEXT[key];\r\n    var canonical = TEXT_CANONICAL[canonicalKey(key)];\r\n    if (canonical) return canonical;\r\n    var flower = translateFlowerLabel(key);\r\n    if (flower) return flower;\r\n    var relativeTime = key.match(/^(\\d+)\\s*(min|m|h|g|d)\\s+fa$/i);\r\n    if (relativeTime) return relativeTime[1] + ({min:'m',m:'m',h:'h',g:'d',d:'d'}[relativeTime[2].toLowerCase()]) + ' ago';\r\n    for (var i = 0; i < PATTERNS.length; i += 1) {\r\n      if (PATTERNS[i][0].test(key)) {\r\n        return key.replace(PATTERNS[i][0], PATTERNS[i][1]);\r\n      }\r\n    }\r\n    var tokenTranslation = translateTokenText(key);\r\n    // A color substitution is not a translation of an entire product sentence.\r\n    // Leave Italian prose intact so the whole field can enter the batch translator.\r\n    if (tokenTranslation && !looksLikeItalianText(tokenTranslation)) return tokenTranslation;\r\n    var decorated = key.match(/^([^\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]*)(.*?)([^\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]*)$/);\r\n    if (decorated) {\r\n      var core = normalize(decorated[2]);\r\n      if (core && core !== key) {\r\n        var coreTranslation = translateTextKey(core);\r\n        if (coreTranslation && coreTranslation !== core) {\r\n          return decorated[1] + coreTranslation + decorated[3];\r\n        }\r\n      }\r\n    }\r\n    return '';\r\n  }\r\n\r\n  function translateText(value) {\r\n    var original = String(value == null ? '' : value);\r\n    var key = normalize(original);\r\n    if (!key) return original;\r\n    var translated = translateTextKey(key);\r\n    return translated ? preserveWhitespace(original, translated) : original;\r\n  }\r\n\r\n  var italianTextKeyMemo = new Map();\r\n  function restoreItalianTextKey(key) {\r\n    if (italianTextKeyMemo.has(key)) return italianTextKeyMemo.get(key);\r\n    var result = restoreItalianTextKeyUncached(key);\r\n    if (italianTextKeyMemo.size >= 1024) italianTextKeyMemo.clear();\r\n    italianTextKeyMemo.set(key, result);\r\n    return result;\r\n  }\r\n\r\n  function restoreItalianTextKeyUncached(key) {\r\n    // The current brand name is shared by both languages.\r\n    if (canonicalKey(key) === 'florame.ai') return key;\r\n    // A captured source field may itself be English (native catalogue copy).\r\n    // Preserve reviewed source keys instead of reverse-translating their colours.\r\n    if (TEXT[key]) return key;\r\n    var canonical = TEXT_REVERSE_CANONICAL[canonicalKey(key)];\r\n    if (canonical) return canonical;\r\n    var tokenTranslation = restoreItalianTokenText(key);\r\n    if (tokenTranslation) return tokenTranslation;\r\n    var decorated = key.match(/^([^\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]*)(.*?)([^\\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]*)$/);\r\n    if (decorated) {\r\n      var core = normalize(decorated[2]);\r\n      if (core && core !== key) {\r\n        var coreTranslation = restoreItalianTextKey(core);\r\n        if (coreTranslation && coreTranslation !== core) {\r\n          return decorated[1] + coreTranslation + decorated[3];\r\n        }\r\n      }\r\n    }\r\n    return '';\r\n  }\r\n\r\n  function restoreItalianText(value) {\r\n    var original = String(value == null ? '' : value);\r\n    var key = normalize(original);\r\n    if (!key) return original;\r\n    var restored = restoreItalianTextKey(key);\r\n    return restored ? preserveWhitespace(original, restored) : original;\r\n  }\r\n\r\n  function getQueryLanguage() {\r\n    try {\r\n      var params = new URLSearchParams(window.location.search || '');\r\n      var raw = params.get('lang') || params.get('locale') || params.get('language') || '';\r\n      raw = String(raw || '').toLowerCase().slice(0, 2);\r\n      return raw === 'en' || raw === 'it' ? raw : '';\r\n    } catch (_) {\r\n      return '';\r\n    }\r\n  }\r\n\r\n  function getStoredLanguage() {\r\n    try {\r\n      var chosen = window.FlorameLanguage && window.FlorameLanguage.choice();\r\n      if (chosen) return chosen;\r\n      var stored = localStorage.getItem(CONFIG.storageKey) || localStorage.getItem('bouquetLanguage') || '';\r\n      stored = String(stored || '').toLowerCase().slice(0, 2);\r\n      return stored === 'en' || stored === 'it' ? stored : '';\r\n    } catch (_) {\r\n      return '';\r\n    }\r\n  }\r\n\r\n  function getBrowserLanguage() {\r\n    try {\r\n      var raw = [];\r\n      if (navigator.languages && navigator.languages.length) raw = Array.prototype.slice.call(navigator.languages);\r\n      else if (navigator.language) raw = [navigator.language];\r\n      for (var i = 0; i < raw.length; i += 1) {\r\n        var lang = String(raw[i] || '').toLowerCase().slice(0, 2);\r\n        if (lang === 'en' || lang === 'it') return lang;\r\n      }\r\n    } catch (_) {}\r\n    return '';\r\n  }\r\n\r\n  function resolveLanguage() {\r\n    var query = getQueryLanguage();\r\n    if (query) return query;\r\n    try {\r\n      var path = String(window.location.pathname || '').toLowerCase();\r\n      if (path === '/en' || path.indexOf('/en/') === 0) return 'en';\r\n      if (path === '/it' || path.indexOf('/it/') === 0) return 'it';\r\n    } catch (_) {}\r\n    var stored = getStoredLanguage();\r\n    if (stored) return stored;\r\n    try {\r\n      var htmlLang = String(document.documentElement.getAttribute('lang') || '').toLowerCase().slice(0, 2);\r\n      if (htmlLang === 'en' || htmlLang === 'it') return htmlLang;\r\n    } catch (_) {}\r\n    return CONFIG.defaultLanguage || 'it';\r\n  }\r\n\r\n  function clearGTranslateCookie() {\r\n    try {\r\n      var host = window.location.hostname || '';\r\n      var root = host.split('.').slice(-2).join('.');\r\n      ['', host, '.' + host, root, '.' + root].filter(Boolean).forEach(function (domain) {\r\n        ['/', window.location.pathname || '/'].forEach(function (path) {\r\n          document.cookie = 'googtrans=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=' + path + (domain ? '; domain=' + domain : '');\r\n        });\r\n      });\r\n    } catch (_) {}\r\n  }\r\n\r\n  function removeGTranslateUi() {\r\n    try {\r\n      document.querySelectorAll('#gt_float_wrapper, .gt_float_switcher, iframe.goog-te-banner-frame, .goog-te-gadget').forEach(function (node) {\r\n        node.remove();\r\n      });\r\n      document.querySelectorAll('.gtranslate_wrapper').forEach(function (node) {\r\n        node.setAttribute('data-native-i18n-skip', '1');\r\n        node.style.display = 'none';\r\n        node.innerHTML = '';\r\n      });\r\n      document.documentElement.style.top = '';\r\n      document.body.style.top = '';\r\n    } catch (_) {}\r\n  }\r\n\r\n  function syncLanguageStorage(lang) {\r\n    currentLanguage = lang === 'en' ? 'en' : 'it';\r\n    try { localStorage.setItem(CONFIG.storageKey, currentLanguage); } catch (_) {}\r\n    try { localStorage.setItem('bouquetLanguage', currentLanguage); } catch (_) {}\r\n    try { document.documentElement.setAttribute('lang', currentLanguage); } catch (_) {}\r\n    try { document.documentElement.setAttribute('data-florame-lang', currentLanguage); } catch (_) {}\r\n    clearGTranslateCookie();\r\n    removeGTranslateUi();\r\n  }\r\n\r\n  function matchesTranslationAncestor(el, selector) {\r\n    if (!ancestorMatchCache) return !!el.closest(selector);\r\n    var cache = ancestorMatchCache.get(selector);\r\n    if (!cache) {\r\n      cache = new WeakMap();\r\n      ancestorMatchCache.set(selector, cache);\r\n    }\r\n    var pending = [];\r\n    var cursor = el;\r\n    var result = false;\r\n    while (cursor) {\r\n      if (cache.has(cursor)) { result = cache.get(cursor); break; }\r\n      pending.push(cursor);\r\n      if (cursor.matches(selector)) { result = true; break; }\r\n      cursor = cursor.parentElement;\r\n    }\r\n    pending.forEach(function (node) { cache.set(node, result); });\r\n    return result;\r\n  }\r\n\r\n  function shouldSkipNode(node) {\r\n    if (!node) return true;\r\n    var el = node.nodeType === 1 ? node : node.parentElement;\r\n    if (!el) return true;\r\n    try { return matchesTranslationAncestor(el, SKIP_SELECTOR); } catch (_) { return false; }\r\n  }\r\n\r\n  function shouldSkipAttributes(el) {\r\n    if (!el || el.nodeType !== 1) return true;\r\n    try { return matchesTranslationAncestor(el, ATTRIBUTE_SKIP_SELECTOR); } catch (_) { return false; }\r\n  }\r\n\r\n  function elementHasTranslatableAttributes(el) {\r\n    if (!el || el.nodeType !== 1) return false;\r\n    // Most catalogue nodes have no localizable attributes. Do not allocate an\r\n    // originals store or inspect their ancestors just to discover that fact.\r\n    if (el.hasAttribute('placeholder') || el.hasAttribute('aria-label') || el.hasAttribute('title') || el.hasAttribute('alt') || el.hasAttribute('data-flp-special-text')) return !shouldSkipAttributes(el);\r\n    if (!el.hasAttribute('value')) return false;\r\n    var tag = String(el.tagName || '').toLowerCase();\r\n    var type = String(el.getAttribute('type') || '').toLowerCase();\r\n    return ((tag === 'input' && ['button', 'submit', 'reset'].indexOf(type) >= 0) || tag === 'button') && !shouldSkipAttributes(el);\r\n  }\r\n\r\n  function shouldSkipDynamicNode(node) {\r\n    if (!node || shouldSkipNode(node)) return true;\r\n    var el = node.nodeType === 1 ? node : node.parentElement;\r\n    if (!el) return true;\r\n    if (hasExplicitEnglishContentLang(el)) return true;\r\n    try { return matchesTranslationAncestor(el, DYNAMIC_SKIP_SELECTOR); } catch (_) { return false; }\r\n  }\r\n\r\n  function shouldSkipDynamicAttribute(el, attr) {\r\n    if (!el || shouldSkipAttributes(el)) return true;\r\n    if (attr === 'value') return true;\r\n    if (hasExplicitEnglishContentLang(el)) return true;\r\n    try { return !!el.closest('[data-native-i18n-sensitive], [data-i18n-sensitive]'); } catch (_) { return false; }\r\n  }\r\n\r\n  function hasExplicitEnglishContentLang(node) {\r\n    var el = node && node.nodeType === 1 ? node : (node && node.parentElement);\r\n    while (el && el !== document.documentElement && el !== document.body) {\r\n      try {\r\n        if (el.hasAttribute && el.hasAttribute('lang')) {\r\n          return /^en(?:-|$)/i.test(String(el.getAttribute('lang') || ''));\r\n        }\r\n      } catch (_) {}\r\n      el = el.parentElement;\r\n    }\r\n    return false;\r\n  }\r\n\r\n  function isLocalizedProductPath(pathname) {\r\n    return /^\\/(?:(?:en|it)\\/)?products\\//i.test(String(pathname || ''));\r\n  }\r\n\r\n  function bareStorefrontPath(pathname) {\r\n    return (String(pathname || '/') || '/').replace(/^\\/(?:en|it)(?=\\/|$)/i, '') || '/';\r\n  }\r\n\r\n  function isLocalizableStorefrontPath(pathname) {\r\n    var bare = bareStorefrontPath(pathname);\r\n    if (bare === '/') return true;\r\n    return /^\\/(?:products|collections|pages|cart|search|policies|blogs)(?:\\/|$)/i.test(bare);\r\n  }\r\n\r\n  function localizeStorefrontPath(pathname, lang) {\r\n    var bare = bareStorefrontPath(pathname);\r\n    if (!isLocalizableStorefrontPath(bare)) return String(pathname || '/');\r\n    return lang === 'en' ? (bare === '/' ? '/en' : '/en' + bare) : bare;\r\n  }\r\n\r\n  function localizeProductPath(pathname, lang) {\r\n    var path = String(pathname || '/');\r\n    var bare = bareStorefrontPath(path);\r\n    if (!/^\\/products\\//i.test(bare)) return path;\r\n    return localizeStorefrontPath(path, lang);\r\n  }\r\n\r\n  function redirectStorefrontLocaleIfNeeded(lang, replace) {\r\n    if (productLocaleRedirecting || !isLocalizableStorefrontPath(window.location.pathname || '')) return false;\r\n    try {\r\n      var url = new URL(window.location.href);\r\n      var nextPath = localizeStorefrontPath(url.pathname, lang === 'en' ? 'en' : 'it');\r\n      if (!nextPath || nextPath === url.pathname) return false;\r\n      url.pathname = nextPath;\r\n      url.searchParams.delete('lang');\r\n      url.searchParams.delete('locale');\r\n      productLocaleRedirecting = true;\r\n      clearDynamicQueue();\r\n      if (replace) window.location.replace(url.href);\r\n      else window.location.assign(url.href);\r\n      return true;\r\n    } catch (_) {\r\n      return false;\r\n    }\r\n  }\r\n\r\n  function getDynamicTextLimit(node, attr) {\r\n    if (attr) return isProductPage() ? 1800 : 900;\r\n    if (!isProductPage()) return 900;\r\n    var el = node && node.nodeType === 1 ? node : (node && node.parentElement);\r\n    try {\r\n      if (el && el.closest('.product__description, .product__title, [id^=\"ProductInfo-\"], .product__info-container')) return 5000;\r\n    } catch (_) {}\r\n    return 1800;\r\n  }\r\n\r\n  function dynamicPendingElement(node) {\r\n    var el = node && node.nodeType === 1 ? node : (node && node.parentElement);\r\n    if (!el || el === document.body || el === document.documentElement) return null;\r\n    if (shouldSkipNode(el)) return null;\r\n    return el;\r\n  }\r\n\r\n  function markDynamicPending(node) {\r\n    return;\r\n  }\r\n\r\n  function clearDynamicPending(node) {\r\n    var el = dynamicPendingElement(node);\r\n    if (!el) return;\r\n    try { el.removeAttribute('data-florame-i18n-pending'); } catch (_) {}\r\n  }\r\n\r\n  function clearDynamicQueue() {\r\n    if (dynamicTimer) {\r\n      try { window.clearTimeout(dynamicTimer); } catch (_) {}\r\n      dynamicTimer = null;\r\n    }\r\n    dynamicQueue = {};\r\n    dynamicProductInFlight = 0;\r\n    updateTranslationPill();\r\n  }\r\n\r\n  function isProductPage() {\r\n    try {\r\n      if (String(CONFIG.pageType || '').toLowerCase() === 'product') return true;\r\n      if (document.body && /\\btemplate-product\\b/.test(document.body.className || '')) return true;\r\n      return isLocalizedProductPath(window.location.pathname || '');\r\n    } catch (_) {\r\n      return false;\r\n    }\r\n  }\r\n\r\n  function hasDynamicTranslationWork() {\r\n    try {\r\n      if (productLocaleRedirecting || currentLanguage !== 'en' || !isProductPage()) return false;\r\n      if (dynamicProductInFlight > 0) return true;\r\n      return Object.keys(dynamicQueue).some(function (key) {\r\n        return dynamicQueue[key] && dynamicQueue[key].product === true;\r\n      });\r\n    } catch (_) {\r\n      return false;\r\n    }\r\n  }\r\n\r\n  function ensureTranslationPill() {\r\n    if (translationPill && translationPill.parentNode) return translationPill;\r\n    if (!isProductPage()) return null;\r\n    var host = document.querySelector('[id^=\"ProductInfo-\"], .product__info-container');\r\n    if (!host) return null;\r\n\r\n    translationPill = document.createElement('div');\r\n    translationPill.className = 'florame-translation-pill';\r\n    translationPill.setAttribute('data-florame-no-translate', '1');\r\n    translationPill.setAttribute('aria-live', 'polite');\r\n    translationPill.innerHTML = '<span class=\"florame-translation-pill__dot\" aria-hidden=\"true\"></span><span class=\"florame-translation-pill__label\">Completing translation...</span>';\r\n    try { host.insertBefore(translationPill, host.firstChild || null); } catch (_) {}\r\n    return translationPill;\r\n  }\r\n\r\n  function updateTranslationPill() {\r\n    var visible = isProductPage() && hasDynamicTranslationWork();\r\n    if (translationPillHideTimer) {\r\n      try { window.clearTimeout(translationPillHideTimer); } catch (_) {}\r\n      translationPillHideTimer = null;\r\n    }\r\n    if (visible) {\r\n      if (translationPill && translationPill.classList.contains('is-visible')) {\r\n        var activeLabel = translationPill.querySelector('.florame-translation-pill__label');\r\n        if (activeLabel) activeLabel.textContent = 'Completing translation...';\r\n        return;\r\n      }\r\n      if (!translationPillShowTimer) {\r\n        translationPillShowTimer = window.setTimeout(function () {\r\n          translationPillShowTimer = null;\r\n          if (!hasDynamicTranslationWork()) return;\r\n          var pill = ensureTranslationPill();\r\n          if (!pill) return;\r\n          var label = pill.querySelector('.florame-translation-pill__label');\r\n          if (label) label.textContent = 'Completing translation...';\r\n          pill.classList.remove('is-done');\r\n          pill.hidden = false;\r\n          window.requestAnimationFrame(function () { pill.classList.add('is-visible'); });\r\n        }, 450);\r\n      }\r\n      return;\r\n    }\r\n    if (translationPillShowTimer) {\r\n      try { window.clearTimeout(translationPillShowTimer); } catch (_) {}\r\n      translationPillShowTimer = null;\r\n    }\r\n    if (!translationPill) return;\r\n    translationPill.classList.remove('is-done');\r\n    translationPill.classList.remove('is-visible');\r\n    translationPillHideTimer = window.setTimeout(function () {\r\n      if (translationPill && !hasDynamicTranslationWork()) translationPill.hidden = true;\r\n    }, 180);\r\n  }\r\n\r\n  function isProbablyNonTranslatable(value) {\r\n    var text = normalize(value);\r\n    if (!text || text.length < 2) return true;\r\n    if (/^[\\d\\s\u20AC$.,:;/%+\\-()]+$/.test(text)) return true;\r\n    if (/^[A-Z]{1,4}$/.test(text)) return true;\r\n    if (/^https?:\\/\\//i.test(text)) return true;\r\n    return false;\r\n  }\r\n\r\n  function looksLikeItalianText(value) {\r\n    var text = canonicalKey(value);\r\n    if (!text || text.length < 2) return false;\r\n    // Occasion copy often has neither accents nor flower names.\r\n    if (/\\b(pensato|pensata|pensiero|regalare|regalarlo|sorprendere|sorprende|spontaneo|spontanea|giornata)\\b/i.test(text)) return true;\r\n    // Recognize Italian grammar as well as flower vocabulary. Require distinct\r\n    // markers so a repeated loanword in an English sentence is not enough.\r\n    var markers = text.match(/\\b(un|una|uno|gli|dei|degli|delle|della|dello|per|con|che|chi|tuo|tua|ogni|senza)\\b/g) || [];\r\n    if (markers.some(function (word) { return word !== markers[0]; })) return true;\r\n    if (/\\b(splendido|splendida|sinfonia|auguri|infinita|infiniti|soffio|incanto|essenza|petali|indimenticabile|floreale|meraviglia)\\b/i.test(text)) return true;\r\n    if (/[\u00E0\u00E8\u00E9\u00EC\u00F2\u00F9]/i.test(text)) return true;\r\n    if (/\\brose\\s+(rosse|bianche|gialle|arancioni|rosa|viola|miste)\\b/i.test(text)) return true;\r\n    if (/\\b(descrizione|composizione|incarto|significato|occasione|perfetta|prendersi cura|questo bouquet|gigli|giglio|gerbere|margherite|tulipani|tulipano|girasoli|girasole|fiori|fiore|nastro|carta|decorazione|nebbiolina|fogliame|verde|arancione|giallo|bianco|ross[oa]|taglia|gambi|acqua|fresca|ogni mattina|ideale per|simboleggia|simboleggiano|incontra|celebrare|successo|dottore|dottoressa|omaggio|purezza|passione|luce|amore|gratitudine|rinascita|inizio|radioso|solare|seta|velluto)\\b/i.test(text)) return true;\r\n    if (/\\b(il|lo|la|gli|le|un|una|uno|dei|degli|delle|del|dello|della|con|per|che|nel|nella|nelle|sul|sulla|alla|alle|ogni|tuo|tua)\\b/i.test(text) && /\\b(bouquet|fiori|fiore|rose|rosa|gigli|giglio|tulipani|girasoli|nastro|carta|decorazione|occasione|significato|descrizione)\\b/i.test(text)) return true;\r\n    return false;\r\n  }\r\n\r\n  function isProductCriticalTranslation(node, attr, text) {\r\n    if (!isProductPage() || !looksLikeItalianText(text)) return false;\r\n    var el = node && node.nodeType === 1 ? node : (node && node.parentElement);\r\n    if (!el) return false;\r\n    try {\r\n      if (el.closest('.product__description, .product__title, [id^=\"ProductInfo-\"], .product__info-container, product-info')) return true;\r\n    } catch (_) {}\r\n    return !!attr && (attr === 'placeholder' || attr === 'aria-label' || attr === 'title' || attr === 'alt');\r\n  }\r\n\r\n  function queueDynamicTranslation(node, original, attr) {\r\n    if (!CONFIG.dynamicTranslation || currentLanguage !== 'en') return '';\r\n    if (!CONFIG.translationEndpoint) return '';\r\n    if (attr ? shouldSkipDynamicAttribute(node, attr) : shouldSkipDynamicNode(node)) return '';\r\n    var text = normalize(original);\r\n    if (isProbablyNonTranslatable(text)) return '';\r\n    if (text.length > getDynamicTextLimit(node, attr)) return '';\r\n    var key = canonicalKey(text);\r\n    var shared = window.FlorameTranslationCache && window.FlorameTranslationCache.peek(text, { endpoint: CONFIG.translationEndpoint });\r\n    if (shared) return preserveWhitespace(original, shared);\r\n    if (dynamicTranslations[key]) return preserveWhitespace(original, dynamicTranslations[key]);\r\n    if (!looksLikeItalianText(text)) return '';\r\n    if (dynamicSkipped[key]) return '';\r\n    if (!attr) markDynamicPending(node);\r\n    if (!dynamicQueue[key]) dynamicQueue[key] = { text: text, nodes: [], product: isProductCriticalTranslation(node, attr, text) };\r\n    if (!dynamicQueue[key].product && isProductCriticalTranslation(node, attr, text)) dynamicQueue[key].product = true;\r\n    dynamicQueue[key].nodes.push({ node: node, attr: attr || '', original: text });\r\n    if (!dynamicTimer) {\r\n      dynamicTimer = window.setTimeout(flushDynamicTranslations, isProductPage() ? 40 : 180);\r\n    }\r\n    updateTranslationPill();\r\n    return '';\r\n  }\r\n\r\n  function isCurrentDynamicEntry(entry) {\r\n    var node = entry.node;\r\n    if (!node || !node.isConnected) return false;\r\n    if (entry.attr ? shouldSkipDynamicAttribute(node, entry.attr) : shouldSkipDynamicNode(node)) return false;\r\n    var current = entry.attr ? (node.getAttribute(entry.attr) || '') : (node.nodeValue || '');\r\n    var stored = entry.attr ? (attrOriginals.get(node) || {})[entry.attr] : textOriginals.get(node);\r\n    var written = entry.attr ? (attributeWrites.get(node) || {})[entry.attr] : textWrites.get(node);\r\n    return canonicalKey(stored == null ? current : stored) === canonicalKey(entry.original)\r\n      && (canonicalKey(current) === canonicalKey(entry.original) || current === written);\r\n  }\r\n\r\n  function applyDynamicResult(item, translated) {\r\n    if (!translated || canonicalKey(translated) === canonicalKey(item.text)) {\r\n      if (!looksLikeItalianText(item.text)) rememberDynamicSkip(item.text);\r\n      item.nodes.forEach(function (entry) { clearDynamicPending(entry.node); });\r\n      return;\r\n    }\r\n    rememberDynamicTranslation(item.text, translated);\r\n    if (currentLanguage !== 'en') {\r\n      item.nodes.forEach(function (entry) { clearDynamicPending(entry.node); });\r\n      return;\r\n    }\r\n    var wasApplying = isApplying;\r\n    isApplying = true;\r\n    try {\r\n      item.nodes.forEach(function (entry) {\r\n        try {\r\n          if (!isCurrentDynamicEntry(entry)) return;\r\n          if (entry.attr) {\r\n            if (!entry.node || entry.node.nodeType !== 1) return;\r\n            var store = getAttrStore(entry.node);\r\n            var attrOriginal = store[entry.attr] || entry.node.getAttribute(entry.attr) || '';\r\n            if (canonicalKey(attrOriginal) !== canonicalKey(entry.original)) return;\r\n            var attrNext = preserveWhitespace(attrOriginal, translated);\r\n            writeTranslatedAttribute(entry.node, entry.attr, attrNext);\r\n            return;\r\n          }\r\n          if (!entry.node || entry.node.nodeType !== 3) return;\r\n          var original = textOriginals.get(entry.node) || entry.node.nodeValue || '';\r\n          if (canonicalKey(original) !== canonicalKey(entry.original)) return;\r\n          var next = preserveWhitespace(original, translated);\r\n          writeTranslatedText(entry.node, next);\r\n          clearDynamicPending(entry.node);\r\n        } catch (_) {}\r\n      });\r\n    } finally {\r\n      isApplying = wasApplying;\r\n    }\r\n  }\r\n\r\n  function retryDynamicTranslation(item, retryable, delay) {\r\n    var key = canonicalKey(item.text), queued = dynamicQueue[key];\r\n    item.retries = (item.retries || 0) + 1;\r\n    if (!retryable || item.retries > 2) {\r\n      rememberDynamicSkip(item.text);\r\n      delete dynamicQueue[key];\r\n      return;\r\n    }\r\n    if (currentLanguage !== 'en') return;\r\n    if (queued && queued !== item) {\r\n      item.nodes = item.nodes.concat(queued.nodes);\r\n      item.product = item.product || queued.product;\r\n    }\r\n    dynamicQueue[key] = item;\r\n    dynamicRetryAt = Math.max(dynamicRetryAt, Date.now() + delay);\r\n  }\r\n\r\n  function flushDynamicTranslations() {\r\n    dynamicTimer = null;\r\n    if (dynamicInFlight || currentLanguage !== 'en') {\r\n      updateTranslationPill();\r\n      return;\r\n    }\r\n    var retryWait = dynamicRetryAt - Date.now();\r\n    if (retryWait > 0) {\r\n      dynamicTimer = window.setTimeout(flushDynamicTranslations, retryWait);\r\n      return;\r\n    }\r\n    Object.keys(dynamicQueue).forEach(function (key) {\r\n      dynamicQueue[key].nodes = dynamicQueue[key].nodes.filter(isCurrentDynamicEntry);\r\n      if (!dynamicQueue[key].nodes.length || dynamicSkipped[key]) {\r\n        delete dynamicQueue[key];\r\n        return;\r\n      }\r\n      if (!dynamicTranslations[key]) return;\r\n      applyDynamicResult(dynamicQueue[key], dynamicTranslations[key]);\r\n      delete dynamicQueue[key];\r\n    });\r\n    // Respect both endpoint limits, leaving the remaining queue for the next batch.\r\n    var keys = [], batchCharacters = 0, batchLimit = isProductPage() ? 40 : 30;\r\n    Object.keys(dynamicQueue).some(function (key) {\r\n      var length = dynamicQueue[key].text.length;\r\n      if (keys.length >= batchLimit || batchCharacters + length > 64000) return true;\r\n      keys.push(key);\r\n      batchCharacters += length;\r\n      return false;\r\n    });\r\n    if (!keys.length) {\r\n      updateTranslationPill();\r\n      return;\r\n    }\r\n    var batch = keys.map(function (key) {\r\n      var item = dynamicQueue[key];\r\n      delete dynamicQueue[key];\r\n      return item;\r\n    });\r\n    dynamicInFlight = true;\r\n    var productBatchCount = batch.filter(function (item) { return item.product === true; }).length;\r\n    dynamicProductInFlight += productBatchCount;\r\n    updateTranslationPill();\r\n\r\n    var request = window.FlorameTranslationCache\r\n      ? window.FlorameTranslationCache.translate(batch.map(function (item) { return item.text; }), { endpoint: CONFIG.translationEndpoint }).then(function (map) { return { map: map }; })\r\n      : fetch(CONFIG.translationEndpoint, {\r\n      method: 'POST',\r\n      headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' },\r\n      body: JSON.stringify({\r\n        sourceLanguage: 'it',\r\n        targetLanguage: 'en',\r\n        context: 'storefront-dom',\r\n        texts: batch.map(function (item) { return item.text; })\r\n      })\r\n    })\r\n      .then(function (response) {\r\n        if (response.ok) return response.json();\r\n        var header = response.headers && response.headers.get('Retry-After');\r\n        var seconds = Number(header);\r\n        var retryAfterMs = header ? (Number.isFinite(seconds) ? seconds * 1000 : Date.parse(header) - Date.now()) : 5000;\r\n        throw Object.assign(new Error('translation_http_' + response.status), {\r\n          retryable: response.status === 429 || response.status >= 500,\r\n          retryAfterMs: Math.min(60000, Math.max(1000, Number.isFinite(retryAfterMs) ? retryAfterMs : 5000))\r\n        });\r\n      });\r\n    request.then(function (data) {\r\n        var map = data && data.map ? data.map : {};\r\n        var list = data && Array.isArray(data.translations) ? data.translations : [];\r\n        batch.forEach(function (item, index) {\r\n          var translated = map[item.text] || list[index] || '';\r\n          if (typeof translated !== 'string' || !normalize(translated) || canonicalKey(translated) === canonicalKey(item.text)) {\r\n            retryDynamicTranslation(item, true, 350);\r\n            return;\r\n          }\r\n          applyDynamicResult(item, translated);\r\n        });\r\n      })\r\n      .catch(function (error) {\r\n        batch.forEach(function (item) {\r\n          retryDynamicTranslation(item, error.retryable !== false, error.retryAfterMs || 5000);\r\n        });\r\n      })\r\n      .finally(function () {\r\n        batch.forEach(function (item) {\r\n          item.nodes.forEach(function (entry) { clearDynamicPending(entry.node); });\r\n        });\r\n        dynamicInFlight = false;\r\n        dynamicProductInFlight = Math.max(0, dynamicProductInFlight - productBatchCount);\r\n        if (Object.keys(dynamicQueue).length) {\r\n          if (dynamicTimer) window.clearTimeout(dynamicTimer);\r\n          dynamicTimer = window.setTimeout(flushDynamicTranslations, Math.max(isProductPage() ? 90 : 250, dynamicRetryAt - Date.now()));\r\n        }\r\n        updateTranslationPill();\r\n      });\r\n  }\r\n\r\n  function translateTextNode(node) {\r\n    if (!node || node.nodeType !== 3 || !/\\S/.test(node.nodeValue || '') || shouldSkipNode(node)) return;\r\n    if (!textOriginals.has(node)) textOriginals.set(node, (window.FlorameTranslationCache && window.FlorameTranslationCache.original && window.FlorameTranslationCache.original(node)) || node.nodeValue || '');\r\n    var original = textOriginals.get(node) || '';\r\n    var next = original;\r\n    if (currentLanguage === 'en') {\r\n      next = translateText(original);\r\n      if (next === original) {\r\n        next = queueDynamicTranslation(node, original) || original;\r\n      }\r\n    } else {\r\n      next = restoreItalianText(original);\r\n    }\r\n    writeTranslatedText(node, next);\r\n  }\r\n\r\n  function getAttrStore(el) {\r\n    var store = attrOriginals.get(el);\r\n    if (!store) {\r\n      store = {};\r\n      attrOriginals.set(el, store);\r\n    }\r\n    return store;\r\n  }\r\n\r\n  function translateAttributes(el) {\r\n    if (!elementHasTranslatableAttributes(el)) return;\r\n    var attrs = ['placeholder', 'aria-label', 'title', 'alt'];\r\n    if (el.hasAttribute('data-flp-special-text')) attrs.push('data-text');\r\n    var tag = String(el.tagName || '').toLowerCase();\r\n    var type = String(el.getAttribute('type') || '').toLowerCase();\r\n    if ((tag === 'input' && ['button', 'submit', 'reset'].indexOf(type) >= 0) || tag === 'button') attrs.push('value');\r\n\r\n    var store = getAttrStore(el);\r\n    attrs.forEach(function (attr) {\r\n      if (!el.hasAttribute(attr)) return;\r\n      if (store[attr] == null) store[attr] = el.getAttribute(attr) || '';\r\n      var original = store[attr] || '';\r\n      var next = currentLanguage === 'en' ? translateText(original) : restoreItalianText(original);\r\n      if (currentLanguage === 'en' && next === original && attr !== 'value') {\r\n        next = queueDynamicTranslation(el, original, attr) || original;\r\n      }\r\n      writeTranslatedAttribute(el, attr, next);\r\n    });\r\n  }\r\n\r\n  function walk(root) {\r\n    if (!root) return;\r\n    if (root.nodeType === 3) {\r\n      translateTextNode(root);\r\n      return;\r\n    }\r\n    if (root.nodeType !== 1 && root.nodeType !== 9 && root.nodeType !== 11) return;\r\n    if (root.nodeType === 1 && shouldSkipNode(root) && !elementHasTranslatableAttributes(root)) return;\r\n    if (root.nodeType === 1) translateAttributes(root);\r\n    var walker = document.createTreeWalker(root, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_TEXT, {\r\n      acceptNode: function (node) {\r\n        if (node.nodeType === 1 && elementHasTranslatableAttributes(node)) return NodeFilter.FILTER_ACCEPT;\r\n        return shouldSkipNode(node) ? NodeFilter.FILTER_REJECT : NodeFilter.FILTER_ACCEPT;\r\n      }\r\n    });\r\n    var node = walker.nextNode();\r\n    while (node) {\r\n      if (node.nodeType === 3) translateTextNode(node);\r\n      else translateAttributes(node);\r\n      node = walker.nextNode();\r\n    }\r\n  }\r\n\r\n  function isCustomerAccountLoginLink(url, originalHref) {\r\n    var value = String((originalHref || '') + ' ' + (url && url.pathname ? url.pathname : '')).toLowerCase();\r\n    return /\\/account\\/login(?:[/?#]|$)|\\/login(?:[/?#]|$)|\\/authentication\\//.test(value);\r\n  }\r\n\r\n  function isCustomerAccountLogoutLink(url, originalHref) {\r\n    var value = String((originalHref || '') + ' ' + (url && url.pathname ? url.pathname : '')).toLowerCase();\r\n    return /\\/account\\/logout(?:[/?#]|$)|\\/logout(?:[/?#]|$)|customer_logout/.test(value);\r\n  }\r\n\r\n  function customerAccountRegionCountry() {\r\n    var country = CONFIG.customerAccountCountry || (window.Shopify && window.Shopify.country) || 'IT';\r\n    country = String(country || '').toUpperCase().replace(/[^A-Z]/g, '').slice(0, 2);\r\n    return country || 'IT';\r\n  }\r\n\r\n  function applyCustomerAccountLocaleParams(url) {\r\n    var lang = currentLanguage === 'en' ? 'en' : 'it';\r\n    url.searchParams.set('locale', lang);\r\n    url.searchParams.set('lang', lang);\r\n    url.searchParams.set('ui_locales', lang);\r\n    url.searchParams.set('region_country', customerAccountRegionCountry());\r\n  }\r\n\r\n  function normalizeCustomerAccountProfileHref(url) {\r\n    var accountUrl = new URL('https://account.florame.ai/');\r\n    applyCustomerAccountLocaleParams(accountUrl);\r\n    if (url && url.hash) accountUrl.hash = url.hash;\r\n    return accountUrl.href;\r\n  }\r\n\r\n  function isCustomerAccountProfilePath(url) {\r\n    if (!url) return false;\r\n    var path = String(url.pathname || '/').replace(/\\/+$/g, '') || '/';\r\n    return path === '/' || path === '/account';\r\n  }\r\n\r\n  function localizationTargets(root, selector, selfOnly) {\r\n    if (selfOnly) return root && root.matches && root.matches(selector) ? [root] : [];\r\n    var scope = root && root.querySelectorAll ? root : document;\r\n    var nodes = Array.prototype.slice.call(scope.querySelectorAll(selector));\r\n    if (root && root.matches && root.matches(selector)) nodes.unshift(root);\r\n    return nodes;\r\n  }\r\n\r\n  function updateLanguageLinks(root, selfOnly) {\r\n    if (!root) return;\r\n    try {\r\n      var nodes = localizationTargets(root, CONFIG.linkSelector, selfOnly);\r\n      nodes.forEach(function (a) {\r\n        // Localizing a path is idempotent. Always retain the current commerce\r\n        // parameters, which can change after switching florist or variant.\r\n        var href = a.getAttribute('href') || '';\r\n        if (!href || href.indexOf('#') === 0) return;\r\n        var url = new URL(href, window.location.origin);\r\n        var isSameOrigin = url.origin === window.location.origin;\r\n        // Shopify owns this login redirect and continuously normalizes it.\r\n        // Extra locale aliases are removed by its runtime, causing an observer\r\n        // feedback loop if we add them again. Keep its supported locale only.\r\n        if (isSameOrigin && /^\\/customer_authentication\\/(?:redirect|login)\\/?$/.test(url.pathname)) {\r\n          url.searchParams.set('locale', currentLanguage);\r\n          if (/\\/redirect\\/?$/.test(url.pathname)) url.searchParams.set('region_country', customerAccountRegionCountry());\r\n          url.searchParams.delete('lang');\r\n          url.searchParams.delete('ui_locales');\r\n          var loginHref = url.pathname + url.search + url.hash;\r\n          if (href !== loginHref) a.setAttribute('href', loginHref);\r\n          return;\r\n        }\r\n        var isFlorameHost = /(^|\\.)florame\\.ai$/i.test(url.hostname);\r\n        var isFlorameAccountHost = /^account\\.florame\\.ai$/i.test(url.hostname);\r\n        var isShopifyCustomerAccountHost = (/^shopify\\.com$/i.test(url.hostname) || /^customer-account\\.shopify\\.com$/i.test(url.hostname)) && (/\\/account(?:\\/|$)/i.test(url.pathname) || /\\/authentication\\//i.test(url.pathname));\r\n        if (!isSameOrigin && !isFlorameHost && !isShopifyCustomerAccountHost) return;\r\n        var isCustomerAccountLink = isFlorameAccountHost || isShopifyCustomerAccountHost || a.hasAttribute('data-florame-account-link');\r\n        var isCustomerAccountProfileLink = isCustomerAccountLink && isCustomerAccountProfilePath(url) && !isCustomerAccountLoginLink(url, href) && !isCustomerAccountLogoutLink(url, href);\r\n        if (isCustomerAccountProfileLink) {\r\n          var profileHref = normalizeCustomerAccountProfileHref(url);\r\n          if (href !== profileHref) a.setAttribute('href', profileHref);\r\n          return;\r\n        }\r\n        if (isCustomerAccountLink) {\r\n          applyCustomerAccountLocaleParams(url);\r\n        } else if ((isSameOrigin || isFlorameHost) && isLocalizableStorefrontPath(url.pathname)) {\r\n          url.pathname = localizeStorefrontPath(url.pathname, currentLanguage);\r\n          url.searchParams.delete('lang');\r\n          url.searchParams.delete('locale');\r\n        } else if (currentLanguage === 'en') {\r\n          url.searchParams.set('locale', 'en');\r\n          url.searchParams.set('lang', 'en');\r\n        } else {\r\n          url.searchParams.delete('lang');\r\n          url.searchParams.delete('locale');\r\n        }\r\n        if (isCustomerAccountLink) {\r\n          url.searchParams.delete('buyer_flags');\r\n        }\r\n        var localizedHref = isSameOrigin ? (url.pathname + url.search + url.hash) : url.href;\r\n        if (href !== localizedHref) a.setAttribute('href', localizedHref);\r\n      });\r\n    } catch (_) {}\r\n  }\r\n\r\n  function syncCheckoutLocale(root, selfOnly) {\r\n    try {\r\n      localizationTargets(root, 'form[action]', selfOnly).forEach(function (form) {\r\n        var action = form.getAttribute('action') || '';\r\n        var url = new URL(action, window.location.origin);\r\n        if (url.origin !== window.location.origin || bareStorefrontPath(url.pathname) !== '/cart') return;\r\n        url.pathname = localizeStorefrontPath(url.pathname, currentLanguage);\r\n        url.searchParams.delete('lang');\r\n        url.searchParams.delete('locale');\r\n        var localizedAction = url.origin === window.location.origin ? (url.pathname + url.search + url.hash) : url.href;\r\n        if (action !== localizedAction) form.setAttribute('action', localizedAction);\r\n        var input = form.querySelector('input[name=\"locale\"][data-native-i18n-locale]');\r\n        if (currentLanguage === 'en') {\r\n          if (!input) {\r\n            input = document.createElement('input');\r\n            input.type = 'hidden';\r\n            input.name = 'locale';\r\n            input.setAttribute('data-native-i18n-locale', '1');\r\n            form.appendChild(input);\r\n          }\r\n          input.value = 'en';\r\n        } else if (input) {\r\n          input.remove();\r\n        }\r\n      });\r\n    } catch (_) {}\r\n  }\r\n\r\n  function apply(root, options) {\r\n    var previousCache = ancestorMatchCache;\r\n    var previousApplying = isApplying;\r\n    ancestorMatchCache = new Map();\r\n    isApplying = true;\r\n    try {\r\n      if (options && options.attributesOnly) translateAttributes(root);\r\n      else walk(root || document.body || document.documentElement);\r\n      // Changing text cannot introduce links or checkout forms.\r\n      if ((!options || !options.attributesOnly) && (!root || root.nodeType !== 3)) {\r\n        updateLanguageLinks(root || document);\r\n        syncCheckoutLocale(root || document);\r\n      }\r\n      if (!options || !options.skipSwitcher) updateSwitcher();\r\n    } finally {\r\n      ancestorMatchCache = previousCache;\r\n      isApplying = previousApplying;\r\n    }\r\n  }\r\n\r\n  // Observer work is resumable even when a renderer inserts one large catalogue.\r\n  // Explicit apply/setLanguage and the initial pre-reveal pass remain synchronous.\r\n  var activeTranslationJob = null;\r\n  function createTranslationJob(root) {\r\n    return { root: root, node: root, walker: root.nodeType === 3 ? null : document.createTreeWalker(root, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_TEXT) };\r\n  }\r\n\r\n  function advanceTranslationJob(job, deadline) {\r\n    if (!job.root.isConnected) return true;\r\n    // A renderer may replace the current branch between frames. Restart the\r\n    // remaining connected root; newly inserted siblings also arrive via observer.\r\n    if (job.node && job.node !== job.root && !job.root.contains(job.node)) {\r\n      job.node = job.root;\r\n      job.walker = document.createTreeWalker(job.root, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_TEXT);\r\n    }\r\n    var previousCache = ancestorMatchCache;\r\n    var previousApplying = isApplying;\r\n    ancestorMatchCache = new Map();\r\n    isApplying = true;\r\n    try {\r\n      var visited = 0;\r\n      while (job.node) {\r\n        var node = job.node;\r\n        if (node.nodeType === 3) translateTextNode(node);\r\n        else if (node.nodeType === 1) {\r\n          translateAttributes(node);\r\n          // Process links/forms once at their own node, never rescan descendants.\r\n          if (node.hasAttribute('href')) updateLanguageLinks(node, true);\r\n          if (node.tagName === 'FORM') syncCheckoutLocale(node, true);\r\n        }\r\n        job.node = job.walker ? job.walker.nextNode() : null;\r\n        visited += 1;\r\n        if (visited >= 120 || Date.now() >= deadline) break;\r\n      }\r\n      return !job.node;\r\n    } finally {\r\n      ancestorMatchCache = previousCache;\r\n      isApplying = previousApplying;\r\n    }\r\n  }\r\n\r\n  function schedule(nodes) {\r\n    if (nodes && nodes.length) {\r\n      for (var i = 0; i < nodes.length; i += 1) {\r\n        var node = nodes[i];\r\n        if (!node) continue;\r\n        if (pendingNodeSet && pendingNodeSet.has(node)) continue;\r\n        pendingNodes.push(node);\r\n        if (pendingNodeSet) pendingNodeSet.add(node);\r\n      }\r\n    }\r\n    if (scheduled) return;\r\n    scheduled = true;\r\n    var run = function () {\r\n      scheduled = false;\r\n      var deadline = Date.now() + 8;\r\n      var jobs = 0;\r\n      do {\r\n        if (!activeTranslationJob) {\r\n          var node = pendingNodes.shift();\r\n          if (!node) break;\r\n          if (pendingNodeSet) pendingNodeSet.delete(node);\r\n          if (!node.isConnected) continue;\r\n          var parent = node.parentNode, covered = false;\r\n          while (parent) {\r\n            if (pendingNodeSet && pendingNodeSet.has(parent)) { covered = true; break; }\r\n            parent = parent.parentNode;\r\n          }\r\n          if (covered) continue;\r\n          activeTranslationJob = createTranslationJob(node);\r\n        }\r\n        if (!advanceTranslationJob(activeTranslationJob, deadline)) break;\r\n        activeTranslationJob = null;\r\n        jobs += 1;\r\n      } while (jobs < 140 && Date.now() < deadline);\r\n      if (jobs) updateSwitcher();\r\n      if (activeTranslationJob || pendingNodes.length) schedule();\r\n    };\r\n    if (isProductPage()) {\r\n      window.setTimeout(run, 0);\r\n      return;\r\n    }\r\n    window.requestAnimationFrame(function () {\r\n      if ('requestIdleCallback' in window) window.requestIdleCallback(run, { timeout: 180 });\r\n      else run();\r\n    });\r\n  }\r\n\r\n  function startObserver() {\r\n    if (observer || !document.documentElement) return;\r\n    observer = new MutationObserver(handleObservedMutations);\r\n    observer.observe(document.documentElement, {\r\n      subtree: true,\r\n      childList: true,\r\n      characterData: true,\r\n      attributes: true,\r\n      attributeFilter: ['placeholder', 'aria-label', 'title', 'alt', 'value', 'href', 'action', 'data-text']\r\n    });\r\n  }\r\n\r\n  function handleObservedMutations(mutations) {\r\n      if (isApplying) return;\r\n      var nodes = [];\r\n      var attributeNodes = new Set();\r\n      mutations.forEach(function (mutation) {\r\n        if (mutation.type === 'characterData') {\r\n          if (textWrites.has(mutation.target) && textWrites.get(mutation.target) === mutation.target.nodeValue) return;\r\n          textWrites.delete(mutation.target);\r\n          textOriginals.set(mutation.target, mutation.target.nodeValue || '');\r\n          nodes.push(mutation.target);\r\n        } else if (mutation.type === 'childList') {\r\n          mutation.addedNodes.forEach(function (node) { nodes.push(node); });\r\n        } else if (mutation.type === 'attributes') {\r\n          if (mutation.attributeName === 'href' || mutation.attributeName === 'action') {\r\n            // A URL rewrite does not change the card's text or descendants.\r\n            // Partner attribution and locale can each update a link: reconcile\r\n            // the current URL without walking the whole card again.\r\n            if (mutation.attributeName === 'href') updateLanguageLinks(mutation.target);\r\n            else syncCheckoutLocale(mutation.target);\r\n            return;\r\n          }\r\n          var writes = attributeWrites.get(mutation.target);\r\n          if (writes && Object.prototype.hasOwnProperty.call(writes, mutation.attributeName) && writes[mutation.attributeName] === mutation.target.getAttribute(mutation.attributeName)) return;\r\n          if (writes) delete writes[mutation.attributeName];\r\n          var store = getAttrStore(mutation.target);\r\n          store[mutation.attributeName] = mutation.target.getAttribute(mutation.attributeName) || '';\r\n          attributeNodes.add(mutation.target);\r\n        }\r\n      });\r\n      // An updated label does not change any descendant text, links or forms.\r\n      // Deduplicate the attributes on each element without rescanning its tree.\r\n      attributeNodes.forEach(function (node) {\r\n        if (node.isConnected) apply(node, { attributesOnly: true, skipSwitcher: true });\r\n      });\r\n      if (nodes.length) schedule(nodes);\r\n  }\r\n\r\n  function finishEarlyTranslation() {\r\n    // The observer owns everything parsed or changed after the early pass.\r\n    // Flush it before revealing the page instead of translating HTML twice.\r\n    handleObservedMutations(observer.takeRecords());\r\n    if (activeTranslationJob) {\r\n      pendingNodes.unshift(activeTranslationJob.root);\r\n      activeTranslationJob = null;\r\n    }\r\n    var batch = pendingNodes.splice(0);\r\n    if (pendingNodeSet) batch.forEach(function (node) { pendingNodeSet.delete(node); });\r\n    var roots = new Set(batch);\r\n    batch.forEach(function (node) {\r\n      if (!node.isConnected) return;\r\n      var parent = node.parentNode;\r\n      while (parent) {\r\n        if (roots.has(parent)) return;\r\n        parent = parent.parentNode;\r\n      }\r\n      apply(node, { skipSwitcher: true });\r\n    });\r\n    updateSwitcher();\r\n  }\r\n\r\n  function runCatchupPasses() {\r\n    // The observer localizes late content within its changed subtree. Product\r\n    // pages retain catch-ups for their asynchronously hydrated commerce widgets.\r\n    if (!isProductPage() && observer) return;\r\n    if (currentLanguage !== 'en') return;\r\n    var delays = isProductPage() ? [220, 700, 1600, 3400, 7000] : [350, 1200, 2800];\r\n    delays.forEach(function (delay) {\r\n      window.setTimeout(function () {\r\n        if (currentLanguage !== 'en') return;\r\n        schedule([document.body || document.documentElement]);\r\n      }, delay);\r\n    });\r\n  }\r\n\r\n  function bindMobileProductCatchup() {\r\n    if (window.__florameNativeI18nProductCatchupBound) return;\r\n    window.__florameNativeI18nProductCatchupBound = '1';\r\n    var run = function () {\r\n      if (currentLanguage !== 'en' || !isProductPage() || productLocaleRedirecting) return;\r\n      schedule([document.body || document.documentElement]);\r\n    };\r\n    try { window.addEventListener('pageshow', run, { passive: true }); } catch (_) {}\r\n    try { window.addEventListener('load', function () { window.setTimeout(run, 120); }, { passive: true }); } catch (_) {}\r\n    try {\r\n      document.addEventListener('visibilitychange', function () {\r\n        if (!document.hidden) window.setTimeout(run, 120);\r\n      });\r\n    } catch (_) {}\r\n  }\r\n\r\n  function setLanguage(lang, options) {\r\n    options = options || {};\r\n    var next = lang === 'en' ? 'en' : 'it';\r\n    try {\r\n      document.documentElement.classList.remove('florame-i18n-ready');\r\n      document.documentElement.classList.remove('florame-i18n-boot-timeout');\r\n    } catch (_) {}\r\n    if (next !== 'en') clearDynamicQueue();\r\n    syncLanguageStorage(next);\r\n    apply(document.body || document.documentElement);\r\n    updateTranslationPill();\r\n    markBootReady();\r\n    runCatchupPasses();\r\n    try {\r\n      window.dispatchEvent(new CustomEvent('florame:native-language-change', { detail: { language: next } }));\r\n    } catch (_) {}\r\n    if (options.updateUrl !== false) {\r\n      try {\r\n        var url = new URL(window.location.href);\r\n        if (isLocalizableStorefrontPath(url.pathname)) {\r\n          url.pathname = localizeStorefrontPath(url.pathname, next);\r\n          url.searchParams.delete('lang');\r\n          url.searchParams.delete('locale');\r\n        } else if (next === 'en') {\r\n          url.searchParams.set('lang', 'en');\r\n          url.searchParams.set('locale', 'en');\r\n        } else {\r\n          url.searchParams.delete('lang');\r\n          url.searchParams.delete('locale');\r\n        }\r\n        window.history.replaceState(window.history.state, '', url.pathname + url.search + url.hash);\r\n      } catch (_) {}\r\n    }\r\n  }\r\n\r\n  function injectSwitcher() {\r\n    return;\r\n    if (!CONFIG.autoSwitcher || document.querySelector('[data-native-language-switcher=\"1\"], .custom-lang-dropdown')) return;\r\n    var holder = document.createElement('div');\r\n    holder.className = 'florame-native-lang-switch';\r\n    holder.setAttribute('data-native-language-switcher', '1');\r\n    holder.innerHTML = [\r\n      '<button type=\"button\" data-lang=\"it\" aria-label=\"Italiano\">IT</button>',\r\n      '<button type=\"button\" data-lang=\"en\" aria-label=\"English\">EN</button>'\r\n    ].join('');\r\n    document.body.appendChild(holder);\r\n  }\r\n\r\n  function injectStyles() {\r\n    if (document.getElementById('florameNativeI18nStyles')) return;\r\n    var style = document.createElement('style');\r\n    style.id = 'florameNativeI18nStyles';\r\n    style.textContent = [\r\n      '.florame-native-lang-switch{position:fixed;right:16px;bottom:16px;z-index:2147482000;display:flex;align-items:center;gap:3px;padding:4px;border-radius:999px;background:linear-gradient(145deg,#fff 0%,#fff3f7 48%,#ffe3eb 100%);border:1px solid rgba(255,77,117,.22);box-shadow:0 14px 30px rgba(196,29,75,.16),0 4px 10px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(255,77,117,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}',\r\n      '.florame-native-lang-switch button{appearance:none;border:0;border-radius:999px;background:transparent;color:#6b273a;display:inline-flex;align-items:center;justify-content:center;font:900 12px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em;min-width:42px;height:34px;padding:0 12px;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease,filter .16s ease}',\r\n      '.florame-native-lang-switch button:hover{background:rgba(255,77,117,.1);color:#c41d4b;transform:translateY(-1px)}',\r\n      '.florame-native-lang-switch button.is-active{background:linear-gradient(145deg,#ff7fa0 0%,#ff4d75 55%,#d91855 100%);color:#fff;box-shadow:0 9px 18px rgba(255,77,117,.34),inset 0 1px 0 rgba(255,255,255,.38),inset 0 -2px 0 rgba(136,11,52,.22);transform:translateY(-1px);text-shadow:0 1px 1px rgba(70,0,22,.18)}',\r\n      '.florame-native-lang-inline{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;padding:4px!important;border:1px solid rgba(255,77,117,.22)!important;border-radius:999px!important;background:linear-gradient(145deg,#fff 0%,#fff3f7 48%,#ffe3eb 100%)!important;box-shadow:0 14px 30px rgba(196,29,75,.16),0 4px 10px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(255,77,117,.08)!important;color:#6b273a!important}',\r\n      '.florame-native-lang-inline button{appearance:none!important;border:0!important;border-radius:999px!important;background:transparent!important;color:#6b273a!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font:900 12px/1 system-ui,-apple-system,Segoe UI,sans-serif!important;letter-spacing:.04em!important;min-width:42px!important;height:34px!important;padding:0 12px!important;cursor:pointer!important;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease,filter .16s ease!important}',\r\n      '.florame-native-lang-inline button:hover{background:rgba(255,77,117,.1)!important;color:#c41d4b!important;transform:translateY(-1px)!important}',\r\n      '.florame-native-lang-inline button.is-active{background:linear-gradient(145deg,#ff7fa0 0%,#ff4d75 55%,#d91855 100%)!important;color:#fff!important;box-shadow:0 9px 18px rgba(255,77,117,.34),inset 0 1px 0 rgba(255,255,255,.38),inset 0 -2px 0 rgba(136,11,52,.22)!important;transform:translateY(-1px)!important;text-shadow:0 1px 1px rgba(70,0,22,.18)!important}',\r\n      '.florame-translation-pill{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin:0 0 10px auto;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.88);color:#6b273a;border:1px solid rgba(255,77,117,.18);box-shadow:0 10px 24px rgba(196,29,75,.10),0 2px 8px rgba(15,23,42,.06),inset 0 1px 0 rgba(255,255,255,.92);font:800 12px/1.1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:0;opacity:0;transform:translateY(-4px);transition:opacity .18s ease,transform .18s ease;pointer-events:none}',\r\n      '.florame-translation-pill[hidden]{display:none!important}',\r\n      '.florame-translation-pill.is-visible{opacity:1;transform:translateY(0)}',\r\n      '.florame-translation-pill.is-done{color:#146c43;border-color:rgba(20,108,67,.18);box-shadow:0 10px 24px rgba(20,108,67,.10),0 2px 8px rgba(15,23,42,.05),inset 0 1px 0 rgba(255,255,255,.92)}',\r\n      '.florame-translation-pill__dot{width:7px;height:7px;border-radius:999px;background:#ff4d75;box-shadow:0 0 0 0 rgba(255,77,117,.35);animation:florameTranslationPulse 1.15s ease-in-out infinite}',\r\n      '.florame-translation-pill.is-done .florame-translation-pill__dot{background:#16a34a;animation:none;box-shadow:0 0 0 3px rgba(22,163,74,.12)}',\r\n      '@keyframes florameTranslationPulse{0%{box-shadow:0 0 0 0 rgba(255,77,117,.35);transform:scale(.92)}70%{box-shadow:0 0 0 7px rgba(255,77,117,0);transform:scale(1)}100%{box-shadow:0 0 0 0 rgba(255,77,117,0);transform:scale(.92)}}',\r\n      '@media (max-width:640px){.florame-native-lang-switch{right:12px;bottom:12px}.florame-native-lang-switch button{min-width:35px;height:30px;padding:0 9px;font-size:11px}}'\r\n    ].join('');\r\n    document.head.appendChild(style);\r\n  }\r\n\r\n  function updateSwitcher() {\r\n    try {\r\n      document.querySelectorAll('[data-native-language-switcher=\"1\"] button[data-lang], .lang-opt[data-native-lang], .language-option[data-lang]').forEach(function (button) {\r\n        var lang = button.getAttribute('data-lang') || button.getAttribute('data-native-lang') || '';\r\n        var active = lang === currentLanguage;\r\n        if (button.classList.contains('is-active') !== active) button.classList.toggle('is-active', active);\r\n        var pressed = active ? 'true' : 'false';\r\n        if (button.getAttribute('aria-pressed') !== pressed) button.setAttribute('aria-pressed', pressed);\r\n      });\r\n      var emoji = document.getElementById('currentEmoji');\r\n      var nextEmoji = currentLanguage === 'en' ? '\uD83C\uDDEC\uD83C\uDDE7' : '\uD83C\uDDEE\uD83C\uDDF9';\r\n      if (emoji && emoji.textContent !== nextEmoji) emoji.textContent = nextEmoji;\r\n    } catch (_) {}\r\n  }\r\n\r\n  function translateDialogText(value) {\r\n    var text = String(value == null ? '' : value);\r\n    return currentLanguage === 'en' ? translateText(text) : restoreItalianText(text);\r\n  }\r\n\r\n  function bindNativeDialogs() {\r\n    if (window.__florameNativeI18nDialogsBound) return;\r\n    window.__florameNativeI18nDialogsBound = '1';\r\n    var nativeAlert = window.alert;\r\n    var nativeConfirm = window.confirm;\r\n    var nativePrompt = window.prompt;\r\n    if (typeof nativeAlert === 'function') {\r\n      window.alert = function (message) {\r\n        return nativeAlert.call(window, translateDialogText(message));\r\n      };\r\n    }\r\n    if (typeof nativeConfirm === 'function') {\r\n      window.confirm = function (message) {\r\n        return nativeConfirm.call(window, translateDialogText(message));\r\n      };\r\n    }\r\n    if (typeof nativePrompt === 'function') {\r\n      window.prompt = function (message, defaultValue) {\r\n        return nativePrompt.call(window, translateDialogText(message), defaultValue);\r\n      };\r\n    }\r\n  }\r\n\r\n  function bindExistingLanguageMenus() {\r\n    try {\r\n      document.querySelectorAll('.lang-opt[onclick*=\"selectLang\"]').forEach(function (node) {\r\n        var text = normalize(node.textContent || '').toLowerCase();\r\n        var lang = text.indexOf('english') >= 0 ? 'en' : (text.indexOf('italiano') >= 0 ? 'it' : '');\r\n        if (!lang) return;\r\n        node.setAttribute('data-native-lang', lang);\r\n      });\r\n    } catch (_) {}\r\n  }\r\n\r\n  function bindLanguageButtons() {\r\n    if (document.documentElement.dataset.nativeI18nButtonsBound === '1') return;\r\n    document.documentElement.dataset.nativeI18nButtonsBound = '1';\r\n    document.addEventListener('click', function (event) {\r\n      var button = event.target && event.target.closest ? event.target.closest('[data-native-language-switcher=\"1\"] button[data-lang], .florame-native-lang-switch button[data-lang], .lang-opt[data-native-lang], .language-option[data-lang]') : null;\r\n      if (!button) return;\r\n      event.preventDefault();\r\n      if (window.FlorameLanguage) {\r\n        window.FlorameLanguage.change(button.getAttribute('data-lang') || button.getAttribute('data-native-lang') || 'it');\r\n        return;\r\n      }\r\n      setLanguage(button.getAttribute('data-lang') || button.getAttribute('data-native-lang') || 'it');\r\n    });\r\n  }\r\n\r\n  function boot() {\r\n    if (productLocaleRedirecting) return;\r\n    syncLanguageStorage(currentLanguage);\r\n    if (redirectStorefrontLocaleIfNeeded(currentLanguage, true)) return;\r\n    injectStyles();\r\n    bindNativeDialogs();\r\n    injectSwitcher();\r\n    bindExistingLanguageMenus();\r\n    bindLanguageButtons();\r\n    bindMobileProductCatchup();\r\n    startObserver();\r\n    if (earlyPassCompleted && observer) finishEarlyTranslation();\r\n    else apply(document.documentElement);\r\n    updateTranslationPill();\r\n    markBootReady();\r\n    runCatchupPasses();\r\n  }\r\n\r\n  function earlyBoot() {\r\n    syncLanguageStorage(currentLanguage);\r\n    if (redirectStorefrontLocaleIfNeeded(currentLanguage, true)) return;\r\n    injectStyles();\r\n    bindNativeDialogs();\r\n    bindMobileProductCatchup();\r\n    startObserver();\r\n    apply(document.documentElement);\r\n    earlyPassCompleted = true;\r\n    updateTranslationPill();\r\n  }\r\n\r\n  window.FlorameI18n = {\r\n    t: function (value) { return currentLanguage === 'en' ? translateText(value) : String(value == null ? '' : value); },\r\n    apply: apply,\r\n    setLanguage: setLanguage,\r\n    getLanguage: function () { return currentLanguage; },\r\n    isEnglish: function () { return currentLanguage === 'en'; }\r\n  };\r\n\r\n  if (document.readyState === 'loading') {\r\n    earlyBoot();\r\n    document.addEventListener('DOMContentLoaded', boot);\r\n  } else {\r\n    // Deferred loading already has the full document: translate it once.\r\n    boot();\r\n  }\r\n})();\r\n"],
  "mappings": "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",
  "names": ["node"]
}
