<?xml version="1.0" encoding="utf-8"?>
<!--
  Copyright (C) 2016 The Android Open Source Project

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
  -->

<resources xmlns:tools="http://schemas.android.com/tools">

    <style name="no_alarms">
        <item name="android:textSize">@dimen/no_alarm_font_size</item>
        <item name="android:textColor">@color/white_63p</item>
    </style>

    <style name="widget_medium_thin">
        <item name="android:fontFamily">sans-serif-thin</item>
        <item name="android:shadowRadius">@dimen/widget_shadow_radius</item>
        <item name="android:shadowColor">@color/widget_shadow_color</item>
        <item name="android:shadowDy">@dimen/widget_shadow_dy</item>
    </style>

    <style name="label">
        <item name="android:textSize">@dimen/label_font_size</item>
    </style>

    <style name="widget_label" parent="label">
        <item name="android:shadowRadius">@dimen/widget_shadow_radius</item>
        <item name="android:shadowColor">@color/widget_shadow_color</item>
        <item name="android:shadowDy">@dimen/widget_shadow_dy</item>
    </style>

    <style name="display_time">
        <item name="android:textSize">56sp</item>
        <item name="android:textColor">@color/white</item>
        <item name="android:fontFamily">sans-serif-light</item>
        <item name="android:fontFeatureSettings" tools:targetApi="21">tnum</item>
    </style>

    <style name="world_clock_time">
        <item name="android:textSize">48sp</item>
        <item name="android:textColor">@color/white</item>
        <item name="android:fontFamily">sans-serif-light</item>
    </style>

    <style name="body">
        <item name="android:textSize">14sp</item>
        <item name="android:textColor">@color/white</item>
    </style>

    <style name="big_thin">
        <item name="android:textSize">@dimen/big_font_size</item>
        <item name="android:fontFamily">sans-serif-thin</item>
    </style>

    <style name="alarm_lockscreen_thin">
        <item name="android:textSize">@dimen/alarm_info_font_size</item>
        <item name="android:fontFamily">sans-serif-thin</item>
    </style>

    <style name="widget_big_thin" parent="big_thin">
        <item name="android:shadowRadius">@dimen/widget_shadow_radius</item>
        <item name="android:shadowColor">@color/widget_shadow_color</item>
        <item name="android:shadowDy">@dimen/widget_shadow_dy</item>
    </style>

    <style name="alarm_label">
        <item name="android:textSize">@dimen/alarm_label_size</item>
    </style>

    <style name="alarm_label_bold" parent="alarm_label">
        <item name="android:textStyle">bold</item>
    </style>

    <style name="PrimaryLabelTextParentAppearance">
        <item name="android:textColor">@color/white</item>
        <item name="android:textSize">@dimen/label_text_size</item>
    </style>

    <style name="PrimaryLabelTextAppearance" parent="PrimaryLabelTextParentAppearance" />

    <style name="SecondaryLabelTextParentAppearance">
        <item name="android:textColor">@color/white_63p</item>
        <item name="android:textSize">@dimen/label_text_size</item>
    </style>

    <style name="SecondaryLabelTextAppearance" parent="SecondaryLabelTextParentAppearance" />

    <style name="TextAppearance.Tab" parent="TextAppearance.Design.Tab">
        <item name="android:fontFamily">sans-serif-medium</item>
        <item name="android:textSize">12sp</item>
    </style>

    <style name="Widget.ActionBar" parent="Widget.AppCompat.ActionBar">
        <item name="android:background">@null</item>

        <!-- Attributes from androidx.appcompat.appcompat -->
        <item name="displayOptions">showTitle|homeAsUp</item>
    </style>

    <style name="Widget.ActionBar.NoTitle">
        <!-- Attributes from androidx.appcompat.appcompat -->
        <item name="displayOptions">homeAsUp</item>
    </style>

    <style name="Widget.Button.TimerSetupDigit" parent="Widget.AppCompat.Button.Borderless">
        <item name="android:background">?attr/selectableItemBackgroundBorderless</item>
        <item name="android:fontFamily">sans-serif-light</item>
        <item name="android:gravity">center</item>
        <item name="android:includeFontPadding">false</item>
        <item name="android:textColor">?android:attr/textColorPrimary</item>
        <item name="android:textSize">36sp</item>
    </style>

    <style name="Widget.ImageButton" parent="Widget.AppCompat.ImageButton">
        <item name="android:background">?attr/selectableItemBackgroundBorderless</item>
    </style>

    <style name="Widget.TimePicker" parent="android:Widget.Material.TimePicker"
        tools:targetApi="21">
        <item name="android:headerBackground">@android:color/transparent</item>
        <item name="android:numbersBackgroundColor">@android:color/transparent</item>
        <item name="android:numbersSelectorColor">?attr/colorAccent</item>
        <item name="android:numbersTextColor">?android:attr/textColorPrimary</item>
    </style>

</resources>
