Act as an expert React/Next.js developer and UX/UI designer. Build a premium, interactive Progressive Web App (PWA) called "Keto Rapid 10kg Drop - VIP Edition". The target audience is the Balkan market, so the entire user interface, data, and hardcoded text MUST be in the Macedonian language.
The goal is to track an EXTREME 28-day weight loss protocol for a sedentary female user (Starting weight: 72.4kg, Goal: 62.4kg). The app must rely ENTIRELY on localStorage for state management (no backend, no database). Progress must persist between reloads.
UI/UX DESIGN:
- Vibe: Premium, sleek, high-end "VIP Coaching" app.
- Color Palette: Dark mode by default. Background: Deep charcoal/black (
#121212). Accents: Elegant Gold (#D4AF37) for highlights and Emerald Green (#10B981) for success/completed states.
- Typography: Clean, modern sans-serif (Inter or similar).
- Navigation: Fixed bottom tab navigation with Lucide React icons (Почетна, План, Намирници, Прогрес).
- Animations: Smooth fade-ins and sliding tabs using Tailwind.
TAB 1: ПОЧЕТНА (Dashboard)
- Header displaying: "Ден [X] од 28".
- span_0A circular progress ring showing the 16:8 Intermittent Fasting timer (Target: Fasting 19:00 to 12:00)span_0.
- Daily Checklist (clickable, saves to localStorage). Crucial: DO NOT include step trackers, user is strictly sedentary. Include only:
- span_1"💧 Испиени 2.5-3L вода"span_1
- span_2span_3"🧂 Електролити (4-5g сол, Калиум)"span_2span_3
- span_4span_5span_6"💊 Магнезиум (400mg навечер)"span_4span_5span_6
- A button: "Види го оброкот за денес" which routes to Tab 2.
TAB 2: ПЛАН (Diet Plan - The Core Feature)
- A view that lets the user select the Week (1, 2, 3, 4) and Day (1 to 7).
- Display the specific meals for the selected day. Each meal should be a nice card with a "Штиклирај како изедено" checkbox.
- USE THE FOLLOWING EXACT DATA TO HARDCODE THE 28-DAY MENU (CALCULATED FOR 800-900 KCAL, SEDENTARY PROFILE). span_7No eating after 19:00span_7.
НЕДЕЛА 1 (Екстремен шок - Без млечни, без масла)
- Ден 1: Прв оброк (12:00): 1 јајце + 2 белки, краставица. Вечера (18:30): 130g бела риба, тиквички + лимон. span_8Ужина: Немаspan_8.
- Ден 2: Прв оброк (12:00): Омлет (1 јајце + 2 белки + спанаќ). Вечера (18:30): 130g пилешки гради + брокула. Ужина: Нема.
- Ден 3: Прв оброк (12:00): 1 јајце + 2 белки + краставица. Вечера (18:30): 130g мисирка + зелена салата (без масло). Ужина: Нема.
- span_9Ден 4: Прв оброк (12:00): 3 белки + 1 јајцеspan_9. span_10Вечера (18:30): 130g туна во вода + микс салата + лимонspan_10.
- Ден 5: Прв оброк (12:00): 1 јајце + 2 белки, зелена салата. span_11Ужина (16:00): Whey Isolate 20g (во вода)span_11. Вечера (18:30): 130g бела риба + брокула.
- Ден 6: Прв оброк (12:00): 1 јајце + 2 белки + спанаќ. span_12Вечера (18:30): 130g пилешки гради + салата + лимонspan_12. span_13Ужина: Немаspan_13.
- Ден 7: Прв оброк (12:00): 3 белки + краставица. span_14Вечера (18:30): 130g бела риба + тиквичкиspan_14. span_15Ужина: Немаspan_15.
НЕДЕЛА 2 (Задржување на дефицитот - строг PSMF)
- Ден 1: Прв оброк: 1 јајце + 2 белки, салата. Ужина: 10g бадеми. Вечера: 130g бела риба, тиквички + лимон (строго без масло).
- Ден 2: Прв оброк: Омлет (1 јајце + 2 белки + спанаќ). Ужина: Whey Isolate 20g. Вечера: 130g пилешко, брокула.
- Ден 3: Прв оброк: 1 јајце + 2 белки + краставица. Ужина: 10g лешници. Вечера: 130g мисирка, зелена салата.
- span_16Ден 4: Прв оброк: 4 белки + 1 јајцеspan_16. span_17Вечера: 130g туна во вода, микс салата + лимонspan_17. (Без ужина).
- Ден 5: Прв оброк: 1 јајце + 2 белки. Ужина: 100g грчки јогурт (0% масти), 15g протеин. Вечера: 130g риба, брокула.
- Ден 6: Прв оброк: Омлет од 3 белки + спанаќ. Ужина: 10g бадеми. Вечера: 130g пилешко, салата.
- Ден 7: Прв оброк: 1 јајце + 2 белки + краставица. span_18Вечера: 130g риба, тиквичкиspan_18.
НЕДЕЛА 3 (Хормонална поддршка во дефицит)
- Ден 1: Прв оброк: 1 јајце + 2 белки + 15g сланина + краставица. Вечера: 130g пилешко + зелена салата.
- span_19Ден 2: Прв оброк: Поташ (70% тиквички + 30% шампињони)span_19 + 3 белки. Вечера: 130g риба + брокула.
- Ден 3: Прв оброк: Марула + 3 варени белки + 10g семки од тиква. Вечера: 130g телешко (посно) + зелена салата.
- Ден 4: Прв оброк: 3 белки + спанаќ. Вечера: Пилешка супа (само бистра супа, без павлака) + 100g варено пилешко + зелена салата.
- Ден 5: Прв оброк: 100g пилешко + зелена салата. Вечера: 130g риба + тиквички.
- span_20Ден 6: Прв оброк: Зелена салата + 40g поасна урдаspan_20. Ужина: Whey 20g. Вечера: 1 јајце + 2 белки + краставица.
- Ден 7: Прв оброк: 1 јајце + 2 белки + 15g сланина. span_21Вечера: 130g месо + зелена салата (без сосови)span_21.
НЕДЕЛА 4 (Финален Dry Look Drop)
- Ден 1: 12:00: 1 јајце + 2 белки, салата. 19:00: 130g пилешко, тиквички. (Без маслиново).
- Ден 2: 12:00: Омлет од 4 белки, спанаќ. span_2216:00: Whey isolate 20gspan_22. span_2319:00: 130g бела риба, брокула + лимонspan_23.
- Ден 3: 12:00: 1 јајце + 2 белки, краставица. 19:00: 130g мисирка, салата (без маслиново).
- span_24Ден 4 (Low fat reset)span_24span_25: 12:00: 4 белкиspan_25. span_2619:00: 130g туна (во вода), микс зелена салата, лимонspan_26. span_27Без масла, без ужиниspan_27.
- Ден 5: 12:00: 1 јајце + 2 белки, салата. span_2816:30: 100g грчки јогурт (0% масти) + 15g протеинspan_28. span_2919:00: 130g риба, брокулаspan_29.
- Ден 6: 12:00: 4 белки, спанаќ. span_3019:00: 130g пилешко, салата + лимонspan_30.
- Ден 7 (Dry Look): 12:00: 1 јајце + 2 белки + 10g сланина. span_3119:00: 130g посно месо, зелена салата (Без млечни)span_31.
TAB 3: НАМИРНИЦИ (Groceries)
- Provide a simple categorized shopping list based ONLY on the items above.
- Categories: "Протеини" (Јајца, Пилешки гради, Мисирка, Бела риба, Туна во вода, Посно телешко), "Зеленчук" (Спанаќ, Брокула, Тиквички, Краставица, Зелена салата, Шампињони), "Останато" (Whey протеин изолат, Грчки јогурт 0%, Бадеми, Електролити, Магнезиум 400mg).
- Make it an interactive checklist that saves state to localStorage.
TAB 4: ПРОГРЕС (Progress Tracking)
- Visual "10kg Challenge" progress bar.
- Input fields to log current weight. Start weight is fixed at 72.4kg, Goal is 62.4kg.
- Display a Recharts line chart (or a clean CSS alternative) plotting logged weights over time.
TECHNICAL RULES:
- Build this as a robust Next.js/React app in a single output if possible, using standard v0 architecture.
- Include all the data mapping natively in the file. Do not mock the data—use the exact text provided above.
- Ensure the UI is strictly mobile-first (max-width: 480px, centered on desktop).