// data.jsx — content model for Cafetería La Z (placeholder data, easy to swap)

const fmt = (n) => '$' + n.toLocaleString('es-AR');

const CATEGORIES = [
  { id: 'cafe',     label: 'Café',       en: 'Coffee',     icon: 'coffee' },
  { id: 'salado',   label: 'Salado',     en: 'Savory',     icon: 'sandwich' },
  { id: 'dulce',    label: 'Dulces',     en: 'Sweets',     icon: 'cookie' },
  { id: 'tortas',   label: 'Tortas',     en: 'Cakes',      icon: 'cake' },
  { id: 'bebidas',  label: 'Bebidas',    en: 'Drinks',     icon: 'bottle' },
];

const PRODUCTS = [
  // Café
  { id: 'cafe-leche',  cat: 'cafe', name: 'Café con leche',      desc: 'Doble de espresso con leche cremada.',   en: 'Latte',              price: 2800, icon: 'coffee', tone: 'brand', tag: 'Favorito' },
  { id: 'capuchino',   cat: 'cafe', name: 'Capuchino',           desc: 'Con espuma y un toque de cacao.',        en: 'Cappuccino',         price: 3200, icon: 'coffee', tone: 'brand' },
  { id: 'cortado',     cat: 'cafe', name: 'Cortado',             desc: 'Espresso cortado con leche.',            en: 'Cortado',            price: 2400, icon: 'coffee', tone: 'brand' },
  { id: 'espresso',    cat: 'cafe', name: 'Espresso',            desc: 'Intenso, de tueste patagónico.',         en: 'Espresso',           price: 2200, icon: 'coffee', tone: 'brand' },
  { id: 'cafe-llevar', cat: 'cafe', name: 'Café para llevar',    desc: 'En vaso térmico, listo para el viaje.',  en: 'Coffee to go',       price: 2900, icon: 'cupToGo', tone: 'accent', tag: 'Para el camino' },
  { id: 'submarino',   cat: 'cafe', name: 'Submarino',           desc: 'Leche caliente y barra de chocolate.',   en: 'Hot chocolate',      price: 3600, icon: 'coffee', tone: 'accent' },
  // Salado
  { id: 'sandwich',    cat: 'salado', name: 'Sándwich de jamón y queso', desc: 'En pan casero, calentito.',     en: 'Ham & cheese sandwich', price: 4800, icon: 'sandwich', tone: 'forest', tag: 'Favorito' },
  { id: 'tostado',     cat: 'salado', name: 'Tostado completo',  desc: 'Jamón, queso, tomate y orégano.',        en: 'Toasted sandwich',   price: 5200, icon: 'sandwich', tone: 'forest' },
  { id: 'empanada',    cat: 'salado', name: 'Empanada',          desc: 'Carne, pollo o verdura. Horneada.',      en: 'Empanada',           price: 2200, icon: 'sandwich', tone: 'forest' },
  { id: 'tarta',       cat: 'salado', name: 'Tarta del día',     desc: 'Porción casera, consultá el sabor.',     en: "Today's tart",       price: 4600, icon: 'cake',     tone: 'forest' },
  // Dulces
  { id: 'alfajor',     cat: 'dulce', name: 'Alfajor artesanal de maicena', desc: 'Relleno de dulce de leche y coco.', en: 'Cornstarch alfajor', price: 2600, icon: 'cookie', tone: 'gold', tag: 'Artesanal' },
  { id: 'alfajor-choco', cat: 'dulce', name: 'Alfajor de chocolate patagónico', desc: 'Bañado en chocolate de la región.', en: 'Chocolate alfajor', price: 2900, icon: 'cookie', tone: 'gold' },
  { id: 'medialunas', cat: 'dulce', name: 'Medialunas (x3)',     desc: 'De manteca, recién horneadas.',          en: 'Croissants (x3)',    price: 3000, icon: 'cookie',  tone: 'gold', tag: 'Favorito' },
  { id: 'budin',      cat: 'dulce', name: 'Budín casero',        desc: 'De limón o naranja, en porción.',        en: 'Homemade loaf cake', price: 2800, icon: 'cake',    tone: 'gold' },
  // Tortas
  { id: 'torta-dia',  cat: 'tortas', name: 'Porción torta del día', desc: 'Lo que salió hoy del horno.',         en: "Today's cake",       price: 4500, icon: 'cake', tone: 'dusk' },
  { id: 'cheesecake', cat: 'tortas', name: 'Cheesecake de frutos rojos', desc: 'Con frutos del bosque patagónico.', en: 'Berry cheesecake', price: 5200, icon: 'cake', tone: 'dusk', tag: 'Favorito' },
  { id: 'lemonpie',   cat: 'tortas', name: 'Lemon pie',          desc: 'Merengue dorado, masa crocante.',        en: 'Lemon pie',          price: 4800, icon: 'cake', tone: 'dusk' },
  // Bebidas
  { id: 'limonada',   cat: 'bebidas', name: 'Limonada de la casa', desc: 'Con jengibre y menta fresca.',         en: 'House lemonade',     price: 3200, icon: 'bottle', tone: 'lake', tag: 'Refrescante' },
  { id: 'jugo',       cat: 'bebidas', name: 'Jugo natural exprimido', desc: 'Naranja recién exprimida.',         en: 'Fresh juice',        price: 3400, icon: 'bottle', tone: 'lake' },
  { id: 'agua',       cat: 'bebidas', name: 'Agua mineral',      desc: 'Con o sin gas. 500 ml.',                 en: 'Mineral water',      price: 1800, icon: 'bottle', tone: 'lake' },
  { id: 'gaseosa',    cat: 'bebidas', name: 'Gaseosa línea',     desc: 'Línea Coca-Cola. 500 ml.',               en: 'Soft drink',         price: 2400, icon: 'bottle', tone: 'lake' },
];

const COMBOS = [
  { id: 'combo-alerces',  name: 'Combo Alerces',  for: 'Para un día de bosque',
    items: ['Café para llevar', 'Sándwich de jamón y queso', 'Alfajor artesanal'], price: 9200, icon: 'cupToGo', tone: 'forest' },
  { id: 'combo-trochita', name: 'Combo Trochita', for: 'Para subir a La Trochita',
    items: ['Chocolate caliente', 'Medialunas (x3)', 'Porción de torta del día'], price: 9900, icon: 'train', tone: 'accent', tag: 'El más pedido' },
  { id: 'combo-excursion', name: 'Combo Excursión', for: 'Para la excursión del día',
    items: ['Bebida a elección', 'Combo snack', 'Sándwich'], price: 9500, icon: 'mountain', tone: 'brand' },
  { id: 'combo-mochilero', name: 'Combo Mochilero', for: 'Para los que van lejos',
    items: ['Termo de café', '2 sándwiches', '2 alfajores artesanales'], price: 14500, icon: 'bag', tone: 'gold' },
];

const ACTIVITIES = [
  { id: 'alerces', name: 'Parque Nacional Los Alerces', en: 'Los Alerces National Park', icon: 'leaf', tone: 'forest',
    meta: 'A 45 min · UNESCO', blurb: 'Bosques milenarios, lagos turquesa y senderos para todo el día.',
    recs: ['cafe-llevar', 'sandwich', 'alfajor'], comboId: 'combo-alerces' },
  { id: 'trochita', name: 'La Trochita', en: 'The Old Patagonian Express', icon: 'train', tone: 'accent',
    meta: 'Salidas desde Esquel', blurb: 'El viejo expreso patagónico, un tren a vapor histórico.',
    recs: ['submarino', 'medialunas', 'torta-dia'], comboId: 'combo-trochita' },
  { id: 'lahoya', name: 'Cerro La Hoya', en: 'La Hoya Ski Center', icon: 'snow', tone: 'lake',
    meta: 'A 20 min · Temporada', blurb: 'Esquí, nieve y nieve fresca cerca del pueblo.',
    recs: ['submarino', 'tostado', 'cafe-llevar'], comboId: 'combo-excursion' },
  { id: 'miradores', name: 'Miradores y senderos', en: 'Lookouts & trails', icon: 'trail', tone: 'brand',
    meta: 'Alrededores de Esquel', blurb: 'Vistas del valle y caminatas cortas para estirar las piernas.',
    recs: ['limonada', 'sandwich', 'alfajor'], comboId: null },
  { id: 'excursiones', name: 'Excursiones y trekking', en: 'Day trips & trekking', icon: 'mountain', tone: 'dusk',
    meta: 'Medio día / día completo', blurb: 'Salidas guiadas por la cordillera y la estepa.',
    recs: ['cafe-llevar', 'tarta', 'jugo'], comboId: 'combo-excursion' },
  { id: 'pesca', name: 'Pesca con mosca', en: 'Fly fishing', icon: 'fish', tone: 'gold',
    meta: 'Ríos y lagos', blurb: 'Aguas patagónicas famosas entre pescadores de todo el mundo.',
    recs: ['agua', 'medialunas', 'sandwich'], comboId: 'combo-mochilero' },
];

const HOURS = [
  { d: 'Lunes a viernes', h: '06:30 – 22:00' },
  { d: 'Sábados', h: '07:00 – 22:00' },
  { d: 'Domingos y feriados', h: '07:30 – 21:00' },
];

// Minimal i18n for chrome text. Product/activity names stay as-is.
const STR = {
  es: {
    open: 'Abierto ahora', closes: 'cierra 22:00', terminal: 'Terminal de Ómnibus · Esquel',
    tagline: 'Tu parada en Esquel\nantes de seguir viaje.',
    heroSub: 'Café de especialidad, pastelería casera y todo para llevar. A pasos de tu plataforma.',
    seeMenu: 'Ver la carta', combosCta: 'Combos viajero', whatToDo: '¿Qué hacer en Esquel?', where: 'Dónde estamos',
    featured: 'Lo más pedido', addBtn: 'Agregar', forTheRoad: 'Para el camino', addCombo: 'Agregar combo',
    quick: 'Accesos rápidos', menu: 'La carta', combosTitle: 'Combos viajero', combosSub: 'Listos para llevar y seguir viaje.',
    esquelTitle: '¿Qué hacer en Esquel?', esquelSub: 'Antes de salir, pasá a buscar lo tuyo.',
    placeTitle: 'Dónde estamos', hoursTitle: 'Horarios', howTitle: 'Cómo llegar',
    cart: 'Mi pedido', viewOrder: 'Ver mi pedido', empty: 'Tu pedido está vacío', emptySub: 'Sumá productos desde la carta o los combos.',
    pickup: 'Retirás en el mostrador', name: 'Tu nombre', namePh: 'Para llamarte cuando esté listo',
    total: 'Total', confirm: 'Confirmar pedido', items: 'productos', item: 'producto',
    tabs: ['Inicio', 'Carta', 'Esquel', 'Lugar'],
    done: '¡Pedido tomado!', doneSub: 'Acercate al mostrador con tu número.', order: 'Pedido', newOrder: 'Hacer otro pedido',
    recommend: 'Te recomendamos', back: 'Volver',
  },
  en: {
    open: 'Open now', closes: 'closes 10 PM', terminal: 'Bus Terminal · Esquel',
    tagline: 'Your stop in Esquel\nbefore the road.',
    heroSub: 'Specialty coffee, homemade pastries and everything to go. Steps from your platform.',
    seeMenu: 'See the menu', combosCta: 'Traveler combos', whatToDo: 'What to do in Esquel?', where: 'Find us',
    featured: 'Most ordered', addBtn: 'Add', forTheRoad: 'For the road', addCombo: 'Add combo',
    quick: 'Quick access', menu: 'Menu', combosTitle: 'Traveler combos', combosSub: 'Ready to grab and go.',
    esquelTitle: 'What to do in Esquel?', esquelSub: 'Before you head out, grab yours.',
    placeTitle: 'Find us', hoursTitle: 'Hours', howTitle: 'How to get here',
    cart: 'My order', viewOrder: 'View my order', empty: 'Your order is empty', emptySub: 'Add items from the menu or combos.',
    pickup: 'Pick up at the counter', name: 'Your name', namePh: "So we can call you when it's ready",
    total: 'Total', confirm: 'Confirm order', items: 'items', item: 'item',
    tabs: ['Home', 'Menu', 'Esquel', 'Place'],
    done: 'Order received!', doneSub: 'Come to the counter with your number.', order: 'Order', newOrder: 'Place another order',
    recommend: 'We recommend', back: 'Back',
  },
};

const productById = (id) => PRODUCTS.find(p => p.id === id) || COMBOS.find(c => c.id === id);

Object.assign(window, { fmt, CATEGORIES, PRODUCTS, COMBOS, ACTIVITIES, HOURS, STR, productById });
