<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                    xmlns:zmhc="clr-namespace:ZuneModdingHelper.Controls">

    <SolidColorBrush x:Key="ZuneMediumTextBrush" Color="#3C3C3C"/>
    <SolidColorBrush x:Key="ZuneLightTextBrush" Color="#868686"/>
    <SolidColorBrush x:Key="ZuneExtraLightTextBrush" Color="#B4B4B4"/>

    <Style x:Key="ZuneTextBlock" TargetType="TextBlock">
        <Setter Property="FontFamily" Value="Segoe UI"/>
        <Setter Property="Typography.StylisticSet1" Value="True"/>
    </Style>
    
    <Style TargetType="TextBlock" BasedOn="{StaticResource ZuneTextBlock}"/>

    <Style x:Key="ActionButtonStyle" TargetType="Button">
        <Style.Resources>
            <!-- Border -->
            <SolidColorBrush x:Key="NormalBorderBrush" Color="#33000000"/>
            <SolidColorBrush x:Key="HoverBorderBrush" Color="#3D000000"/>
            <SolidColorBrush x:Key="PressedBorderBrush" Color="#33000000"/>
            <SolidColorBrush x:Key="DisabledBorderBrush" Color="#14000000"/>

            <!-- Background -->
            <LinearGradientBrush x:Key="NormalBackgroundBrush" StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="#F7F7F7" Offset="0"/>
                <GradientStop Color="#DFDFDF" Offset="1"/>
            </LinearGradientBrush>
            <LinearGradientBrush x:Key="HoverBackgroundBrush" StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="#EAEAEA" Offset="0"/>
                <GradientStop Color="#D4D4D4" Offset="1"/>
            </LinearGradientBrush>
            <LinearGradientBrush x:Key="PressedBackgroundBrush" StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="#F7F7F7" Offset="0"/>
                <GradientStop Color="#DFDFDF" Offset="1"/>
            </LinearGradientBrush>
            <LinearGradientBrush x:Key="DisabledBackgroundBrush" StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="#66F7F7F7" Offset="0"/>
                <GradientStop Color="#57DFDFDF" Offset="1"/>
            </LinearGradientBrush>
        </Style.Resources>

        <Setter Property="FontFamily" Value="segoe zuc"/>
        <Setter Property="FontWeight" Value="ExtraBlack"/>
        <Setter Property="FontSize" Value="12"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="Button">
                    <Border x:Name="Border" BorderThickness="1.5"
                            Background="{StaticResource NormalBackgroundBrush}"
                            BorderBrush="{StaticResource NormalBorderBrush}"
                            Padding="8,2" CornerRadius="4">
                        <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />

                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal" />
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource HoverBackgroundBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource HoverBorderBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PressedBackgroundBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PressedBorderBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource DisabledBackgroundBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource DisabledBorderBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style x:Key="ActionButtonPinkStyle" TargetType="Button">
        <Style.Resources>
            <!-- Border -->
            <SolidColorBrush x:Key="NormalBorderBrush" Color="#80FFFFFF"/>
            <SolidColorBrush x:Key="HoverBorderBrush" Color="#B3FFFFFF"/>
            <SolidColorBrush x:Key="PressedBorderBrush" Color="#66FFFFFF"/>
            <SolidColorBrush x:Key="DisabledBorderBrush" Color="#00FFFFFF"/>

            <!-- Background -->
            <LinearGradientBrush x:Key="NormalBackgroundBrush" StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="#EC008C" Offset="0"/>
                <GradientStop Color="#BE0071" Offset="1"/>
            </LinearGradientBrush>
            <LinearGradientBrush x:Key="HoverBackgroundBrush" StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="#F000A3" Offset="0"/>
                <GradientStop Color="#CB0088" Offset="1"/>
            </LinearGradientBrush>
            <LinearGradientBrush x:Key="PressedBackgroundBrush" StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="#D4007E" Offset="0"/>
                <GradientStop Color="#AB0065" Offset="1"/>
            </LinearGradientBrush>
            <LinearGradientBrush x:Key="DisabledBackgroundBrush" StartPoint="0,0" EndPoint="0,1">
                <GradientStop Color="#66EC008C" Offset="0"/>
                <GradientStop Color="#66BE0071" Offset="1"/>
            </LinearGradientBrush>
        </Style.Resources>

        <Setter Property="FontFamily" Value="segoe zuc"/>
        <Setter Property="FontWeight" Value="ExtraBlack"/>
        <Setter Property="FontSize" Value="12"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="Button">
                    <Border x:Name="Border" BorderThickness="1.5"
                            TextBlock.Foreground="White"
                            Background="{StaticResource NormalBackgroundBrush}"
                            BorderBrush="{StaticResource NormalBorderBrush}"
                            Padding="8,2" CornerRadius="4">
                        <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />

                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal" />
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource HoverBackgroundBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource HoverBorderBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PressedBackgroundBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PressedBorderBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource DisabledBackgroundBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush)" Storyboard.TargetName="Border">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource DisabledBorderBrush}" />
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style x:Key="OverlayButtonStyle" TargetType="Button">
        <Setter Property="Background" Value="#4D000000"/>
        <Setter Property="BorderBrush" Value="Transparent"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="HorizontalContentAlignment" Value="Center"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="Width" Value="32"/>
        <Setter Property="Height" Value="32"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="Button">
                    <Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
                        <Grid>
                            <Path x:Name="ForeCircle" Stroke="#CCFFFFFF" StrokeThickness="1" Fill="#4D000000"
                              HorizontalAlignment="Center" VerticalAlignment="Center">
                                <Path.Data>
                                    <EllipseGeometry RadiusX="12" RadiusY="12" Center="12,12"/>
                                </Path.Data>
                            </Path>
                            <ContentPresenter
                            Margin="{TemplateBinding Padding}"
                            HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                            VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
                        </Grid>

                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal" />
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Effect" Storyboard.TargetName="ForeCircle">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <DropShadowEffect Direction="0" ShadowDepth="0" Color="White" BlurRadius="2" Opacity="0.5"/>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Effect" Storyboard.TargetName="ForeCircle">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <DropShadowEffect Direction="0" ShadowDepth="0" Color="White" BlurRadius="4" Opacity="1.0"/>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

</ResourceDictionary>