{
  "version": "2.6",
  "children": [
    {
      "type": "frame",
      "name": "OTP Verify Showcase",
      "width": 1440,
      "fill": "$bg-page",
      "layout": "vertical",
      "gap": 80,
      "padding": [80, 120],
      "children": [
        {
          "type": "frame",
          "id": "OTPSection",
          "name": "OTP Verification Section",
          "width": "fill_container",
          "layout": "vertical",
          "gap": 48,
          "children": [
            {
              "type": "frame",
              "name": "sectionHeader",
              "layout": "vertical",
              "gap": 16,
              "alignItems": "center",
              "children": [
                {
                  "type": "frame",
                  "name": "shBadge",
                  "fill": "#FF5C0018",
                  "cornerRadius": 100,
                  "padding": [6, 14],
                  "children": [
                    {
                      "type": "text",
                      "name": "badgeText",
                      "fill": "$orange-primary",
                      "content": "OTP VERIFICATION",
                      "fontFamily": "Roboto",
                      "fontSize": 11,
                      "fontWeight": "500",
                      "letterSpacing": 2
                    }
                  ]
                },
                {
                  "type": "text",
                  "name": "shTitle",
                  "fill": "$text-primary",
                  "content": "OTP Verification Cards",
                  "textAlign": "center",
                  "fontFamily": "Roboto",
                  "fontSize": 42,
                  "fontWeight": "normal",
                  "letterSpacing": -1
                },
                {
                  "type": "text",
                  "name": "shDesc",
                  "fill": "$text-tertiary",
                  "textGrowth": "fixed-width",
                  "width": 600,
                  "content": "OTP verification screens for phone authentication and password reset.",
                  "lineHeight": 1.6,
                  "textAlign": "center",
                  "fontFamily": "Roboto",
                  "fontSize": 16
                }
              ]
            },
            {
              "type": "frame",
              "name": "cardsGrid",
              "width": "fill_container",
              "gap": 32,
              "justifyContent": "center",
              "children": [
                {
                  "type": "frame",
                  "id": "OTPCard_Default",
                  "name": "Organism/OTPVerify/Default",
                  "reusable": true,
                  "width": 420,
                  "fill": "$bg-surface",
                  "cornerRadius": 20,
                  "stroke": { "thickness": 1, "fill": "$border-subtle" },
                  "layout": "vertical",
                  "gap": 32,
                  "padding": 40,
                  "alignItems": "center",
                  "children": [
                    {
                      "type": "frame",
                      "name": "cardHeader",
                      "layout": "vertical",
                      "gap": 12,
                      "alignItems": "center",
                      "children": [
                        {
                          "type": "frame",
                          "name": "iconContainer",
                          "width": 64,
                          "height": 64,
                          "fill": "$status-info-bg",
                          "cornerRadius": 32,
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": [
                            {
                              "type": "icon_font",
                              "name": "phoneIcon",
                              "width": 28,
                              "height": 28,
                              "iconFontName": "smartphone",
                              "iconFontFamily": "lucide",
                              "fill": "$status-info"
                            }
                          ]
                        },
                        {
                          "type": "text",
                          "name": "cardTitle",
                          "fill": "$text-primary",
                          "content": "Xác thực OTP",
                          "fontFamily": "Roboto",
                          "fontSize": 24,
                          "fontWeight": "600"
                        },
                        {
                          "type": "text",
                          "name": "cardSubtitle",
                          "fill": "$text-tertiary",
                          "textGrowth": "fixed-width",
                          "width": 300,
                          "content": "Nhập mã 6 chữ số đã gửi đến số điện thoại của bạn",
                          "lineHeight": 1.5,
                          "textAlign": "center",
                          "fontFamily": "Roboto",
                          "fontSize": 14
                        },
                        {
                          "type": "text",
                          "id": "OTP_PhoneNumber",
                          "name": "phoneNumber",
                          "fill": "$orange-primary",
                          "content": "+84 912 ***678",
                          "fontFamily": "Roboto",
                          "fontSize": 16,
                          "fontWeight": "600"
                        }
                      ]
                    },
                    {
                      "type": "frame",
                      "name": "otpInputs",
                      "gap": 8,
                      "children": [
                        {
                          "type": "frame",
                          "name": "d1",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$border-default" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": []
                        },
                        {
                          "type": "frame",
                          "name": "d2",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$border-default" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": []
                        },
                        {
                          "type": "frame",
                          "name": "d3",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$border-default" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": []
                        },
                        {
                          "type": "text",
                          "name": "separator",
                          "fill": "$text-muted",
                          "content": "—",
                          "fontFamily": "Roboto",
                          "fontSize": 20
                        },
                        {
                          "type": "frame",
                          "name": "d4",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$border-default" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": []
                        },
                        {
                          "type": "frame",
                          "name": "d5",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$border-default" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": []
                        },
                        {
                          "type": "frame",
                          "name": "d6",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$border-default" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": []
                        }
                      ]
                    },
                    {
                      "type": "frame",
                      "name": "timerRow",
                      "gap": 4,
                      "alignItems": "center",
                      "children": [
                        {
                          "type": "text",
                          "name": "timerText",
                          "fill": "$text-tertiary",
                          "content": "Mã hết hạn sau",
                          "fontFamily": "Roboto",
                          "fontSize": 14
                        },
                        {
                          "type": "text",
                          "id": "OTP_Timer",
                          "name": "timerValue",
                          "fill": "$orange-primary",
                          "content": "02:45",
                          "fontFamily": "Roboto",
                          "fontSize": 14,
                          "fontWeight": "600"
                        }
                      ]
                    },
                    {
                      "type": "frame",
                      "name": "submitButton",
                      "width": "fill_container",
                      "height": 48,
                      "fill": "$bg-interactive",
                      "cornerRadius": 10,
                      "justifyContent": "center",
                      "alignItems": "center",
                      "children": [
                        {
                          "type": "text",
                          "name": "btnLabel",
                          "fill": "$text-disabled",
                          "content": "Xác nhận",
                          "fontFamily": "Roboto",
                          "fontSize": 14,
                          "fontWeight": "600"
                        }
                      ]
                    },
                    {
                      "type": "frame",
                      "name": "footerLinks",
                      "gap": 4,
                      "children": [
                        {
                          "type": "text",
                          "name": "text",
                          "fill": "$text-tertiary",
                          "content": "Không nhận được mã?",
                          "fontFamily": "Roboto",
                          "fontSize": 14
                        },
                        {
                          "type": "text",
                          "name": "link",
                          "fill": "$orange-primary",
                          "content": "Gửi lại",
                          "fontFamily": "Roboto",
                          "fontSize": 14,
                          "fontWeight": "500"
                        }
                      ]
                    }
                  ]
                },
                {
                  "type": "frame",
                  "id": "OTPCard_Filled",
                  "name": "Organism/OTPVerify/Filled",
                  "reusable": true,
                  "width": 420,
                  "fill": "$bg-surface",
                  "cornerRadius": 20,
                  "stroke": { "thickness": 1, "fill": "$border-subtle" },
                  "layout": "vertical",
                  "gap": 32,
                  "padding": 40,
                  "alignItems": "center",
                  "children": [
                    {
                      "type": "frame",
                      "name": "cardHeader",
                      "layout": "vertical",
                      "gap": 12,
                      "alignItems": "center",
                      "children": [
                        {
                          "type": "frame",
                          "name": "iconContainer",
                          "width": 64,
                          "height": 64,
                          "fill": "$status-success-bg",
                          "cornerRadius": 32,
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": [
                            {
                              "type": "icon_font",
                              "name": "checkIcon",
                              "width": 28,
                              "height": 28,
                              "iconFontName": "check-circle",
                              "iconFontFamily": "lucide",
                              "fill": "$status-success"
                            }
                          ]
                        },
                        {
                          "type": "text",
                          "name": "cardTitle",
                          "fill": "$text-primary",
                          "content": "Xác thực OTP",
                          "fontFamily": "Roboto",
                          "fontSize": 24,
                          "fontWeight": "600"
                        },
                        {
                          "type": "text",
                          "name": "cardSubtitle",
                          "fill": "$text-tertiary",
                          "textGrowth": "fixed-width",
                          "width": 300,
                          "content": "Nhập mã 6 chữ số đã gửi đến số điện thoại của bạn",
                          "lineHeight": 1.5,
                          "textAlign": "center",
                          "fontFamily": "Roboto",
                          "fontSize": 14
                        },
                        {
                          "type": "text",
                          "name": "phoneNumber",
                          "fill": "$orange-primary",
                          "content": "+84 912 ***678",
                          "fontFamily": "Roboto",
                          "fontSize": 16,
                          "fontWeight": "600"
                        }
                      ]
                    },
                    {
                      "type": "frame",
                      "name": "otpInputs",
                      "gap": 8,
                      "children": [
                        {
                          "type": "frame",
                          "name": "d1",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$status-success" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": [
                            { "type": "text", "fill": "$text-primary", "content": "1", "fontFamily": "Roboto", "fontSize": 24, "fontWeight": "600" }
                          ]
                        },
                        {
                          "type": "frame",
                          "name": "d2",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$status-success" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": [
                            { "type": "text", "fill": "$text-primary", "content": "2", "fontFamily": "Roboto", "fontSize": 24, "fontWeight": "600" }
                          ]
                        },
                        {
                          "type": "frame",
                          "name": "d3",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$status-success" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": [
                            { "type": "text", "fill": "$text-primary", "content": "3", "fontFamily": "Roboto", "fontSize": 24, "fontWeight": "600" }
                          ]
                        },
                        {
                          "type": "text",
                          "name": "separator",
                          "fill": "$status-success",
                          "content": "—",
                          "fontFamily": "Roboto",
                          "fontSize": 20
                        },
                        {
                          "type": "frame",
                          "name": "d4",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$status-success" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": [
                            { "type": "text", "fill": "$text-primary", "content": "4", "fontFamily": "Roboto", "fontSize": 24, "fontWeight": "600" }
                          ]
                        },
                        {
                          "type": "frame",
                          "name": "d5",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$status-success" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": [
                            { "type": "text", "fill": "$text-primary", "content": "5", "fontFamily": "Roboto", "fontSize": 24, "fontWeight": "600" }
                          ]
                        },
                        {
                          "type": "frame",
                          "name": "d6",
                          "width": 48,
                          "height": 56,
                          "fill": "$bg-elevated",
                          "cornerRadius": 10,
                          "stroke": { "thickness": 1, "fill": "$status-success" },
                          "justifyContent": "center",
                          "alignItems": "center",
                          "children": [
                            { "type": "text", "fill": "$text-primary", "content": "6", "fontFamily": "Roboto", "fontSize": 24, "fontWeight": "600" }
                          ]
                        }
                      ]
                    },
                    {
                      "type": "frame",
                      "name": "submitButton",
                      "width": "fill_container",
                      "height": 48,
                      "fill": {
                        "type": "gradient",
                        "gradientType": "linear",
                        "rotation": 135,
                        "colors": [
                          { "color": "#FF5C00", "position": 0 },
                          { "color": "#FF8A4C", "position": 1 }
                        ]
                      },
                      "cornerRadius": 10,
                      "justifyContent": "center",
                      "alignItems": "center",
                      "children": [
                        {
                          "type": "text",
                          "name": "btnLabel",
                          "fill": "$text-primary",
                          "content": "Xác nhận",
                          "fontFamily": "Roboto",
                          "fontSize": 14,
                          "fontWeight": "600"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ],
  "variables": {
    "bg-page": { "type": "color", "value": "#0A0A0B" },
    "bg-surface": { "type": "color", "value": "#111113" },
    "bg-elevated": { "type": "color", "value": "#1A1A1D" },
    "bg-interactive": { "type": "color", "value": "#2A2A2E" },
    "border-default": { "type": "color", "value": "#2A2A2E" },
    "border-subtle": { "type": "color", "value": "#1F1F23" },
    "orange-primary": { "type": "color", "value": "#FF5C00" },
    "text-primary": { "type": "color", "value": "#FFFFFF" },
    "text-tertiary": { "type": "color", "value": "#8B8B90" },
    "text-muted": { "type": "color", "value": "#6B6B70" },
    "text-disabled": { "type": "color", "value": "#4B4B50" },
    "status-success": { "type": "color", "value": "#22C55E" },
    "status-success-bg": { "type": "color", "value": "#22C55E1A" },
    "status-info": { "type": "color", "value": "#3B82F6" },
    "status-info-bg": { "type": "color", "value": "#3B82F61A" }
  }
}
