File size: 4,785 Bytes
a91d88d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
"""
Human+ Design Tokens
Aesthetic: Biopunk Dark Luxury
Dark medical precision meets Bali wellness premium.
"""

# ── COLORS ─────────────────────────────────────────────────────────────
COLORS = {
    # Backgrounds
    "bg_deep":    "#070710",   # Page background β€” near black, blue tint
    "bg_surface": "#0d0d1a",   # Card surface
    "bg_elevated":"#131325",   # Elevated card / modal
    "bg_subtle":  "#1a1a2e",   # Subtle hover / section
    "bg_line":    "#1f1f38",   # Borders, dividers

    # Brand gradient (signature)
    "grad_from":  "#6d28d9",   # Violet
    "grad_via":   "#0284c7",   # Sky blue
    "grad_to":    "#06b6d4",   # Cyan

    # Text
    "text_primary":   "#f0f0fa",  # Main text
    "text_secondary":  "#8b8ba7", # Muted text
    "text_tertiary":   "#4a4a6a", # Very muted

    # Semantic β€” biomarker status
    "optimal":   "#10b981",   # Green β€” in longevity range
    "warning":   "#f59e0b",   # Amber β€” borderline
    "danger":    "#ef4444",   # Red β€” needs attention
    "neutral":   "#6b7280",   # Gray β€” no data

    # Accent
    "accent_violet": "#8b5cf6",
    "accent_cyan":   "#22d3ee",
    "accent_glow":   "rgba(109, 40, 217, 0.25)",
}

# ── TYPOGRAPHY ──────────────────────────────────────────────────────────
# Google Fonts: DM Serif Display (display) + DM Sans (body)
FONTS = {
    "display": "'DM Serif Display', Georgia, serif",
    "body":    "'DM Sans', system-ui, sans-serif",
    "mono":    "'JetBrains Mono', 'Fira Code', monospace",

    # Weights
    "regular": "400",
    "medium":  "500",
    "semibold":"600",
    "bold":    "700",
    "black":   "900",
}

# ── SPACING ─────────────────────────────────────────────────────────────
SPACE = {
    "xs":  "4px",
    "sm":  "8px",
    "md":  "16px",
    "lg":  "24px",
    "xl":  "40px",
    "2xl": "64px",
}

# ── RADIUS ──────────────────────────────────────────────────────────────
RADIUS = {
    "sm":   "8px",
    "md":   "12px",
    "lg":   "16px",
    "xl":   "24px",
    "full": "9999px",
}

# ── SHADOWS ─────────────────────────────────────────────────────────────
SHADOWS = {
    "card":  "0 4px 24px rgba(0,0,0,0.4), 0 1px 0 rgba(255,255,255,0.04) inset",
    "glow":  "0 0 32px rgba(109, 40, 217, 0.3)",
    "glow_green": "0 0 20px rgba(16, 185, 129, 0.25)",
    "glow_red":   "0 0 20px rgba(239, 68, 68, 0.25)",
}

# ── BIOMARKER STATUS CONFIG ─────────────────────────────────────────────
BIOMARKER_STATUS = {
    "optimal": {
        "color":      COLORS["optimal"],
        "bg":         "rgba(16, 185, 129, 0.1)",
        "border":     "rgba(16, 185, 129, 0.3)",
        "label":      "OPTIMAL",
        "emoji":      "🟒",
    },
    "warning": {
        "color":      COLORS["warning"],
        "bg":         "rgba(245, 158, 11, 0.1)",
        "border":     "rgba(245, 158, 11, 0.3)",
        "label":      "SUB-OPTIMAL",
        "emoji":      "🟑",
    },
    "danger": {
        "color":      COLORS["danger"],
        "bg":         "rgba(239, 68, 68, 0.1)",
        "border":     "rgba(239, 68, 68, 0.3)",
        "label":      "PERLU PERHATIAN",
        "emoji":      "πŸ”΄",
    },
    "neutral": {
        "color":      COLORS["neutral"],
        "bg":         "rgba(107, 114, 128, 0.1)",
        "border":     "rgba(107, 114, 128, 0.3)",
        "label":      "NO DATA",
        "emoji":      "βšͺ",
    },
}

# ── PROTOCOL SECTION CONFIG ─────────────────────────────────────────────
PROTOCOL_SECTIONS = {
    "iv_drip": {
        "icon": "πŸ’‰",
        "title": "Rekomendasi IV Drip",
        "color": COLORS["accent_violet"],
    },
    "supplements": {
        "icon": "πŸ’Š",
        "title": "Suplemen Harian",
        "color": COLORS["accent_cyan"],
    },
    "lifestyle": {
        "icon": "🧊",
        "title": "Lifestyle & Recovery",
        "color": COLORS["optimal"],
    },
    "retest": {
        "icon": "πŸ“…",
        "title": "Jadwal Retest & Next Step",
        "color": COLORS["warning"],
    },
}