extends RefCounted static func apply(button: Button, accent: Color = Color("91dbea")) -> void: button.focus_mode = Control.FOCUS_NONE button.add_theme_font_size_override("font_size", 11) button.add_theme_color_override("font_color", accent.lightened(0.25)) button.add_theme_color_override("font_hover_color", Color.WHITE) button.add_theme_color_override("font_pressed_color", Color.WHITE) button.add_theme_color_override("font_disabled_color", Color("566b7d")) button.add_theme_stylebox_override("normal", _style(Color("10212e"), accent.darkened(0.45))) button.add_theme_stylebox_override("hover", _style(Color("193446"), accent)) button.add_theme_stylebox_override("pressed", _style(accent.darkened(0.72), accent.lightened(0.15))) button.add_theme_stylebox_override("disabled", _style(Color("101820"), Color("2c3b46"))) button.add_theme_constant_override("outline_size", 0) static func _style(background: Color, border: Color) -> StyleBoxFlat: var style := StyleBoxFlat.new() style.bg_color = Color(background, 0.48) style.border_color = border style.set_border_width_all(1) style.border_width_left = 3 style.set_corner_radius_all(4) style.content_margin_left = 14 style.content_margin_right = 14 style.content_margin_top = 4 style.content_margin_bottom = 4 style.shadow_color = Color(0, 0, 0, 0.24) style.shadow_size = 3 style.shadow_offset = Vector2(0, 2) return style