diff --git a/src/App.vue b/src/App.vue
index 896b51d..172d043 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -14,7 +14,8 @@
-
+
+
@@ -22,12 +23,14 @@
import { ref } from 'vue'
import BottomNav from './components/BottomNav.vue'
import InfoPanel from './components/InfoPanel.vue'
+import DocsPanel from './components/DocsPanel.vue'
import MealPlanner from './pages/MealPlanner.vue'
import Converter from './pages/Converter.vue'
import ShoppingList from './pages/ShoppingList.vue'
-const page = ref('meal')
+const page = ref('meal')
const showInfo = ref(false)
+const showDocs = ref(false)
diff --git a/src/components/InfoPanel.vue b/src/components/InfoPanel.vue
index 3edd08d..e1d9331 100644
--- a/src/components/InfoPanel.vue
+++ b/src/components/InfoPanel.vue
@@ -32,16 +32,15 @@
Licenza
EUPL v1.2
-
+
+
@@ -52,7 +51,7 @@
import pkg from '../../package.json'
import appIcon from '../../assets/icon-only.png'
defineProps({ modelValue: Boolean })
-defineEmits(['update:modelValue'])
+defineEmits(['update:modelValue', 'open-docs'])
const version = pkg.version
@@ -150,6 +149,16 @@ const version = pkg.version
.info-row:last-child { border-bottom: none; }
+/* riga cliccabile: reset button, mantiene layout identico alle righe statiche */
+.info-row--btn {
+ width: 100%;
+ min-height: unset;
+ border-radius: 0;
+ background: var(--color-surface);
+ text-align: left;
+}
+.info-row--btn:active { background: var(--color-bg); opacity: 1; }
+
.info-label {
font-size: 0.9rem;
color: var(--color-text);
diff --git a/src/pages/Converter.vue b/src/pages/Converter.vue
index d164131..573d6bc 100644
--- a/src/pages/Converter.vue
+++ b/src/pages/Converter.vue
@@ -27,7 +27,7 @@
class="result-item"
@click="selectItem(r)"
>
- {{ r.food }}
+ {{ capFirst(r.food) }}
{{ capFirst(r.method) }}
@@ -37,7 +37,7 @@
- {{ selected.food }}
+ {{ capFirst(selected.food) }}
·
{{ capFirst(selected.method) }}
@@ -64,7 +64,7 @@
-