Files
Greenlens/design/stitch-onboarding/personalizing_your_plan_dark_mode/code.html
2026-07-06 12:09:48 +02:00

275 lines
14 KiB
HTML

<!DOCTYPE html>
<html lang="en"><head>
<meta charset="utf-8"/>
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport"/>
<title>GreenLens - Progress</title>
<!-- Material Symbols -->
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&amp;display=swap" rel="stylesheet"/>
<!-- Google Fonts -->
<link href="https://fonts.googleapis.com" rel="preconnect"/>
<link crossorigin="" href="https://fonts.gstatic.com" rel="preconnect"/>
<link href="https://fonts.googleapis.com/css2?family=Epilogue:wght@500;600;700&amp;family=JetBrains+Mono:wght@500&amp;family=Manrope:wght@400&amp;display=swap" rel="stylesheet"/>
<!-- Tailwind CSS -->
<script src="https://cdn.tailwindcss.com?plugins=forms,container-queries"></script>
<script id="tailwind-config">
tailwind.config = {
darkMode: "class",
theme: {
extend: {
"colors": {
"on-primary-fixed-variant": "#2e4f00",
"inverse-primary": "#41690c",
"surface": "#0c160d",
"on-tertiary-fixed": "#171d15",
"primary-container": "#a6d66f",
"on-error-container": "#ffdad6",
"surface-dim": "#0c160d",
"surface-container-lowest": "#071008",
"secondary-fixed-dim": "#b7ccb5",
"secondary": "#b7ccb5",
"secondary-container": "#394b39",
"on-surface": "#dae6d6",
"primary-fixed": "#c0f287",
"primary": "#c1f388",
"on-primary": "#1e3700",
"surface-bright": "#313c31",
"tertiary-fixed": "#dee5d6",
"error-container": "#93000a",
"background": "#0c160d",
"on-tertiary-fixed-variant": "#42493e",
"on-tertiary": "#2c3229",
"on-surface-variant": "#c3c9b6",
"inverse-surface": "#dae6d6",
"on-secondary": "#233424",
"on-primary-container": "#365d00",
"inverse-on-surface": "#283328",
"surface-variant": "#2d372d",
"surface-container-low": "#141e14",
"surface-container-highest": "#2d372d",
"surface-container-high": "#222d22",
"tertiary-fixed-dim": "#c2c9bb",
"tertiary-container": "#c3cabc",
"outline": "#8d9382",
"on-background": "#dae6d6",
"on-secondary-fixed": "#0f1f10",
"on-error": "#690005",
"secondary-fixed": "#d3e8d0",
"outline-variant": "#43493a",
"error": "#ffb4ab",
"on-secondary-fixed-variant": "#394b39",
"on-tertiary-container": "#4e554a",
"surface-tint": "#a5d56e",
"tertiary": "#dfe6d8",
"surface-container": "#182218",
"on-secondary-container": "#a6bba4",
"primary-fixed-dim": "#a5d56e",
"on-primary-fixed": "#0f2000"
},
"borderRadius": {
"DEFAULT": "0.25rem",
"lg": "0.5rem",
"xl": "0.75rem",
"full": "9999px"
},
"spacing": {
"unit": "8px",
"gutter": "24px",
"margin-mobile": "16px",
"margin-desktop": "64px",
"container-max": "1280px",
"xs": "8px",
"xl": "32px",
"base": "4px",
"sm": "12px",
"md": "16px",
"lg": "24px",
"container-margin": "20px"
},
"fontFamily": {
"display": [
"Epilogue"
],
"headline-md": [
"Epilogue"
],
"body-lg": [
"Manrope"
],
"headline-lg": [
"Epilogue"
],
"label-sm": [
"JetBrains Mono"
],
"headline-lg-mobile": [
"Epilogue"
],
"body-md": [
"Manrope"
]
},
"fontSize": {
"display": [
"64px",
{
"lineHeight": "1.1",
"letterSpacing": "-0.02em",
"fontWeight": "700"
}
],
"headline-md": [
"28px",
{
"lineHeight": "1.3",
"fontWeight": "500"
}
],
"body-lg": [
"18px",
{
"lineHeight": "1.6",
"fontWeight": "400"
}
],
"headline-lg": [
"40px",
{
"lineHeight": "1.2",
"letterSpacing": "-0.01em",
"fontWeight": "600"
}
],
"label-sm": [
"12px",
{
"lineHeight": "1.0",
"letterSpacing": "0.05em",
"fontWeight": "500"
}
],
"headline-lg-mobile": [
"32px",
{
"lineHeight": "1.2",
"fontWeight": "600"
}
],
"body-md": [
"16px",
{
"lineHeight": "1.6",
"fontWeight": "400"
}
]
}
},
},
}
</script>
<style>
/* Custom animations to enhance the "Gentle Precision" feel */
@keyframes subtle-pulse {
0%, 100% { transform: scale(1); opacity: 1; }
50% { transform: scale(1.02); opacity: 0.95; }
}
.animate-subtle-pulse {
animation: subtle-pulse 3s ease-in-out infinite;
}
@keyframes float-up {
from { transform: translateY(20px); opacity: 0; }
to { transform: translateY(0); opacity: 1; }
}
.animate-float-up {
animation: float-up 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
</style>
<style>
body {
min-height: max(884px, 100dvh);
}
</style>
</head>
<body class="bg-surface text-on-surface antialiased min-h-screen flex flex-col font-sans overflow-x-hidden selection:bg-primary selection:text-on-primary">
<!-- Main Canvas Content -->
<main class="flex-1 flex flex-col px-gutter pt-16 pb-12 w-full max-w-md mx-auto relative h-screen max-h-[900px]">
<!-- Top Section: Progress Display -->
<section class="flex flex-col items-center mt-4 mb-12 animate-float-up" style="animation-delay: 0.1s;">
<div class="animate-subtle-pulse flex flex-col items-center">
<h1 class="font-display text-display text-primary mb-8">73%</h1>
<div class="relative w-40 h-40 flex items-center justify-center mb-8">
<!-- Progress Ring Background -->
<svg class="absolute inset-0 w-full h-full transform -rotate-90" viewbox="0 0 120 120">
<circle class="stroke-surface-variant" cx="60" cy="60" fill="none" r="54" stroke-width="6"></circle>
<!-- Progress Ring Active (73% of 339.29 circumference = 247.6) -->
<circle class="stroke-primary transition-all duration-[2000ms] ease-out" cx="60" cy="60" fill="none" r="54" stroke-dasharray="339.29" stroke-dashoffset="91.6" stroke-linecap="round" stroke-width="6"></circle>
</svg>
<!-- Center Image -->
<div class="w-28 h-28 rounded-full overflow-hidden shadow-[0px_4px_20px_rgba(16,28,18,0.06)] relative z-10 border-4 border-surface-container-lowest bg-surface-container-low">
<img class="w-full h-full object-cover" data-alt="A beautifully lit, highly detailed macro photograph of a fresh, healthy Monstera Deliciosa leaf node emerging. The setting is bright, featuring soft, diffused natural daylight synonymous with premium lifestyle indoor plant photography. The background is a clean, minimal cream wall softly out of focus, allowing the lush green textures to command attention." src="https://lh3.googleusercontent.com/aida-public/AB6AXuDD8Ij49YnpXP0wrHVlraHqQPLHbq5nMP0HJHT-VhpkShra9HVYXZZa0OupKWUhBvR9N4-GIVlLrO55A41z_t3WZQBIupmEkYcnZj9OTKrDeZ5ZAwm1ONH4ZZila5Pww-Njw8Hn0oFBgAtnUZQb0VQi70qgX6xtUzNCLyIUX3OQopUcYBAfEMVKyPExSWfr1X2Kj4YWyP57xnqG5_672eJ2OzoAnrZPMDSBCLx0gqvmmBLurrxksL5O0fTM2afAEQOy-fReEwPLZCM"/>
</div>
</div>
</div>
<!-- Status Pill -->
<div class="bg-surface-variant/60 backdrop-blur-md rounded-full px-5 py-2.5 flex items-center gap-3 shadow-sm">
<span class="material-symbols-outlined text-on-surface-variant text-[18px] animate-spin" style="animation-duration: 3s;">sync</span>
<span class="font-label-sm text-label-sm text-on-surface-variant">Personalizing your care plan…</span>
</div>
</section>
<!-- Middle Section: Vertical Checklist -->
<section class="flex-1 w-full max-w-[280px] mx-auto flex flex-col justify-center gap-5 animate-float-up" style="animation-delay: 0.3s;">
<div class="flex items-center gap-4">
<span class="material-symbols-outlined text-primary text-[24px]" style="font-variation-settings: 'FILL' 1;">check_circle</span>
<span class="font-body-md text-body-md text-on-surface">Analyzing your answers</span>
</div>
<div class="flex items-center gap-4">
<span class="material-symbols-outlined text-primary text-[24px]" style="font-variation-settings: 'FILL' 1;">check_circle</span>
<span class="font-body-md text-body-md text-on-surface">Building your care plan</span>
</div>
<div class="flex items-center gap-4">
<span class="material-symbols-outlined text-primary text-[24px]" style="font-variation-settings: 'FILL' 1;">check_circle</span>
<span class="font-body-md text-body-md text-on-surface">Preparing your scan credits</span>
</div>
<div class="flex items-center gap-4">
<div class="relative flex items-center justify-center w-6 h-6">
<span class="material-symbols-outlined text-outline-variant text-[24px] absolute">radio_button_unchecked</span>
<span class="w-1.5 h-1.5 bg-outline-variant rounded-full animate-pulse"></span>
</div>
<span class="font-body-md text-body-md text-on-surface-variant opacity-80">Finalizing your plan</span>
</div>
</section>
<!-- Bottom Section: Social Proof & Badge -->
<section class="mt-auto flex flex-col items-center animate-float-up w-full" style="animation-delay: 0.5s;">
<!-- Overlapping Testimonial Cards -->
<div class="relative w-full h-[140px] mb-6">
<!-- Background Card (Muted) -->
<div class="absolute top-0 left-1/2 -translate-x-1/2 w-[90%] bg-surface-container-highest rounded-xl h-24 shadow-[0px_4px_20px_rgba(16,28,18,0.06)] transform -translate-y-3 scale-95 opacity-50 z-0"></div>
<!-- Foreground Card (Active) -->
<div class="absolute top-0 left-0 w-full bg-surface-container-lowest rounded-xl shadow-[0px_8px_30px_rgba(16,28,18,0.08)] p-4 flex flex-col gap-2 z-10 border border-surface-variant/50">
<div class="flex items-center gap-3 mb-1">
<img class="w-10 h-10 rounded-full object-cover bg-surface-variant" data-alt="A bright, professional headshot of a smiling woman in her early thirties, bathed in warm, soft natural sunlight. The aesthetic is clean, approachable, and highly polished, fitting a premium digital service. She is framed intimately against a gently blurred background of subtle green foliage." src="https://lh3.googleusercontent.com/aida-public/AB6AXuCwP_g6-fpeohdJjnhG1R_yA-RypkiO6-NENOC640_fORV6ygSF9wlJvjXnQwnUzWnNyLN3AnOErHziNl_el3scfiHFQ0MjcJbOruxYdE0bhxkrPIGHNrH4Dl0nS0WxfeiNPSSiZpuSMM4D-0ZnTZRd5hR6-DnM04dT_mc3beAjFEYeedIrFrSKhi5IsZvK8gTu0x6k5UN627ijnpIaO3WBSeJ1waNUMaZ2OD_tj2pbPohgmE92SunvsOw8qVTP8zPPm79KJgIuniY"/>
<div class="flex flex-col">
<span class="font-label-sm text-label-sm text-on-surface flex items-center gap-1">Elena R. <span class="text-lg">🇺🇸</span></span>
<div class="flex text-tertiary-fixed-dim">
<span class="material-symbols-outlined text-[14px]" style="font-variation-settings: 'FILL' 1;">star</span>
<span class="material-symbols-outlined text-[14px]" style="font-variation-settings: 'FILL' 1;">star</span>
<span class="material-symbols-outlined text-[14px]" style="font-variation-settings: 'FILL' 1;">star</span>
<span class="material-symbols-outlined text-[14px]" style="font-variation-settings: 'FILL' 1;">star</span>
<span class="material-symbols-outlined text-[14px]" style="font-variation-settings: 'FILL' 1;">star</span>
</div>
</div>
</div>
<p class="font-body-md text-body-md text-on-surface-variant leading-relaxed line-clamp-2 italic">
"GreenLens completely saved my Fiddle Leaf Fig. The daily routines feel incredibly precise and easy."
</p>
</div>
</div>
<!-- Store Badge -->
<div class="flex items-center justify-center gap-2 text-primary bg-surface-container-low px-4 py-2 rounded-full border border-primary/20">
<span class="material-symbols-outlined text-[20px]" style="font-variation-settings: 'FILL' 1;">workspace_premium</span>
<span class="font-label-sm text-label-sm uppercase tracking-widest">4.8 App Store Rating</span>
</div>
</section>
</main>
</body></html>