<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2014 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.
-->

<!-- Colors specific to Material themes. -->
<resources>
    <color name="foreground_material_dark">@android:color/white</color>
    <color name="foreground_material_light">@android:color/black</color>

    <color name="background_material_dark">@color/material_grey_850</color>
    <color name="background_material_light">@color/material_grey_50</color>
    <color name="background_floating_material_dark">@color/material_grey_800</color>
    <color name="background_floating_material_light">@android:color/white</color>

    <color name="primary_material_dark">@color/material_grey_900</color>
    <color name="primary_material_light">@color/material_grey_100</color>
    <color name="primary_dark_material_dark">@android:color/black</color>
    <color name="primary_dark_material_light">@color/material_grey_600</color>

    <!-- 26% white (foreground) -->
    <color name="ripple_material_dark">#42ffffff</color>
    <!-- 12% black (foreground) -->
    <color name="ripple_material_light">#1f000000</color>

    <color name="accent_material_light">@color/material_deep_teal_500</color>
    <color name="accent_material_dark">@color/material_deep_teal_200</color>

    <color name="button_material_dark">#ff5a595b</color>
    <color name="button_material_light">#ffd6d7d7</color>

    <color name="switch_thumb_normal_material_dark">#ffbdbdbd</color>
    <color name="switch_thumb_normal_material_light">#fff1f1f1</color>
    <color name="switch_thumb_disabled_material_dark">#ff616161</color>
    <color name="switch_thumb_disabled_material_light">#ffbdbdbd</color>

    <color name="bright_foreground_material_dark">@android:color/white</color>
    <color name="bright_foreground_material_light">@android:color/black</color>
    <!-- White 50% -->
    <color name="bright_foreground_disabled_material_dark">#80ffffff</color>
    <!-- Black 50% -->
    <color name="bright_foreground_disabled_material_light">#80000000</color>
    <color name="bright_foreground_inverse_material_dark">@color/bright_foreground_material_light</color>
    <color name="bright_foreground_inverse_material_light">@color/bright_foreground_material_dark</color>

    <color name="dim_foreground_material_dark">#ffbebebe</color>
    <color name="dim_foreground_material_light">#ff323232</color>
    <color name="dim_foreground_disabled_material_dark">#80bebebe</color>
    <color name="dim_foreground_disabled_material_light">#80323232</color>

    <color name="hint_foreground_material_dark">@color/bright_foreground_disabled_material_dark</color>
    <color name="hint_foreground_material_light">@color/bright_foreground_disabled_material_light</color>

    <!-- TODO: This is 40% alpha on the default accent color. -->
    <color name="highlighted_text_material_dark">#6680cbc4</color>
    <!-- TODO: This is 40% alpha on the default accent color. -->
    <color name="highlighted_text_material_light">#66009688</color>

    <color name="link_text_material_light">@color/material_deep_teal_500</color>
    <color name="link_text_material_dark">@color/material_deep_teal_200</color>

    <!-- Text & foreground colors -->
    <eat-comment />

    <!-- 87% black -->
    <color name="primary_text_default_material_light">#de000000</color>
    <!-- 54% black -->
    <color name="secondary_text_default_material_light">#8a000000</color>

    <!-- 100% white -->
    <color name="primary_text_default_material_dark">#ffffffff</color>
    <!-- 70% white -->
    <color name="secondary_text_default_material_dark">#b3ffffff</color>

    <item name="disabled_alpha_material_light" format="float" type="dimen">0.26</item>
    <item name="disabled_alpha_material_dark" format="float" type="dimen">0.30</item>

    <item name="highlight_alpha_material_light" format="float" type="dimen">0.12</item>
    <item name="highlight_alpha_material_dark" format="float" type="dimen">0.20</item>
    <item name="highlight_alpha_material_colored" format="float" type="dimen">0.26</item>

    <!-- 26% of default values -->
    <color name="primary_text_disabled_material_light">#39000000</color>
    <color name="secondary_text_disabled_material_light">#24000000</color>

    <!-- 30% of default values -->
    <color name="primary_text_disabled_material_dark">#4Dffffff</color>
    <color name="secondary_text_disabled_material_dark">#36ffffff</color>

    <!-- Primary & accent colors -->
    <eat-comment />

    <color name="material_grey_900">#ff212121</color>
    <color name="material_grey_850">#ff303030</color>
    <color name="material_grey_800">#ff424242</color>
    <color name="material_grey_600">#ff757575</color>
    <color name="material_grey_300">#ffe0e0e0</color>
    <color name="material_grey_100">#fff5f5f5</color>
    <color name="material_grey_50">#fffafafa</color>

    <color name="material_deep_teal_200">#ff80cbc4</color>
    <color name="material_deep_teal_500">#ff009688</color>

    <color name="material_blue_grey_800">#ff37474f</color>
    <color name="material_blue_grey_900">#ff263238</color>
    <color name="material_blue_grey_950">#ff21272b</color>

</resources>
