-- Auto-generated by rbx-css
-- Source: buttons.css
local function createStyleSheet()
local sheet = Instance.new("StyleSheet")
sheet.Name = "StyleSheet"
-- Design tokens
sheet:SetAttribute("primary", Color3.fromRGB(51, 95, 255))
sheet:SetAttribute("primary-hover", Color3.fromRGB(45, 80, 221))
sheet:SetAttribute("secondary", Color3.fromRGB(108, 117, 125))
sheet:SetAttribute("secondary-hover", Color3.fromRGB(90, 98, 104))
sheet:SetAttribute("danger", Color3.fromRGB(220, 53, 69))
sheet:SetAttribute("danger-hover", Color3.fromRGB(200, 35, 51))
sheet:SetAttribute("white", Color3.fromRGB(255, 255, 255))
sheet:SetAttribute("spacing-sm", UDim.new(0, 8))
sheet:SetAttribute("spacing-md", UDim.new(0, 12))
sheet:SetAttribute("spacing-lg", UDim.new(0, 16))
sheet:SetAttribute("font-sm", 12)
sheet:SetAttribute("font-md", 14)
sheet:SetAttribute("font-lg", 16)
sheet:SetAttribute("radius-sm", UDim.new(0, 4))
sheet:SetAttribute("radius-md", UDim.new(0, 6))
sheet:SetAttribute("radius-lg", UDim.new(0, 8))
-- Base button (TextButton)
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton"
rule.Parent = sheet
rule:SetProperties({
FontFace = Font.new(
"rbxasset://fonts/families/GothamSSm.json",
Enum.FontWeight.SemiBold
),
TextXAlignment = Enum.TextXAlignment.Center,
AutomaticSize = Enum.AutomaticSize.XY,
})
end
-- Primary button
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.primary"
rule.Parent = sheet
rule:SetProperties({
BackgroundColor3 = "$primary",
BackgroundTransparency = 0,
TextColor3 = "$white",
TextSize = "$font-md",
})
end
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.primary::UICorner"
rule.Parent = sheet
rule:SetProperty("CornerRadius", "$radius-md")
end
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.primary::UIPadding"
rule.Parent = sheet
rule:SetProperties({
PaddingTop = "$spacing-md",
PaddingBottom = "$spacing-md",
PaddingLeft = "$spacing-lg",
PaddingRight = "$spacing-lg",
})
end
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.primary:Hover"
rule.Parent = sheet
rule:SetProperties({
BackgroundColor3 = "$primary-hover",
})
end
-- Small size variant
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.small"
rule.Parent = sheet
rule:SetProperties({
TextSize = "$font-sm",
})
end
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.small::UICorner"
rule.Parent = sheet
rule:SetProperty("CornerRadius", "$radius-sm")
end
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.small::UIPadding"
rule.Parent = sheet
rule:SetProperties({
PaddingTop = "$spacing-sm",
PaddingBottom = "$spacing-sm",
PaddingLeft = "$spacing-md",
PaddingRight = "$spacing-md",
})
end
-- Outline variant
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.outline"
rule.Parent = sheet
rule:SetProperties({
BackgroundTransparency = 1,
TextColor3 = "$primary",
TextSize = "$font-md",
})
end
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.outline::UIStroke"
rule.Parent = sheet
rule:SetProperties({
Thickness = 2,
Color = "$primary",
ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
})
end
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.outline:Hover"
rule.Parent = sheet
rule:SetProperties({
BackgroundColor3 = "$primary",
BackgroundTransparency = 0,
TextColor3 = "$white",
})
end
-- Icon button with aspect ratio
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.icon::UIAspectRatioConstraint"
rule.Parent = sheet
rule:SetProperty("AspectRatio", 1)
end
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.icon::UIPadding"
rule.Parent = sheet
rule:SetProperties({
PaddingTop = "$spacing-md",
PaddingBottom = "$spacing-md",
PaddingLeft = "$spacing-md",
PaddingRight = "$spacing-md",
})
end
-- Full width
do
local rule = Instance.new("StyleRule")
rule.Selector = "TextButton.full-width"
rule.Parent = sheet
rule:SetProperties({
Size = UDim2.new(1, 0, 0, 0),
AutomaticSize = Enum.AutomaticSize.Y,
})
end
return sheet
end
return createStyleSheet