<?xml version="1.0" encoding="utf-8"?>
<!--
 Copyright 2010-2014, Google Inc.
 All rights reserved.

 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions are
 met:

     * Redistributions of source code must retain the above copyright
 notice, this list of conditions and the following disclaimer.
     * Redistributions in binary form must reproduce the above
 copyright notice, this list of conditions and the following disclaimer
 in the documentation and/or other materials provided with the
 distribution.
     * Neither the name of Google Inc. nor the names of its
 contributors may be used to endorse or promote products derived from
 this software without specific prior written permission.

 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-->
<resources>
  <color name="pref_inputstyle_title">#FFD8D8D8</color>
  <color name="pref_inputstyle_title_disabled">#80D8D8D8</color>
  <color name="symbol_input_background_top" >#D8D8D8</color>
  <color name="symbol_input_background_bottom" >#ABABAB</color>
  <color name="input_frame_background">#e5e5e5</color>

  <!-- Color setting of "action bar"-like UI for User Dictionary Tool. -->
  <color name="action_bar_background">#EEE</color>
  <color name="action_bar_background_shade">#CCC</color>
  <color name="action_bar_pressed_background">#77C5E1</color>

  <!-- Floating candidate window. -->
  <color name="floating_candidate_window_background">#eceff1</color>
  <color name="floating_candidate_text">#cc37474f</color>
  <color name="floating_candidate_focus_background">#1a37474f</color>
  <color name="floating_candidate_focused_text">#000</color>
  <color name="floating_candidate_shortcut_text">#8037474f</color>
  <color name="floating_candidate_description_text">#8037474f</color>
  <color name="floating_candidate_footer_icon_pressed_background">#1a37474f</color>
  <color name="floating_candidate_footer_text">#8037474f</color>
  <color name="floating_candidate_footer_separator">#4d37474f</color>
  <color name="floating_candidate_scroll_indicator">#4db6ac</color>
  <color name="floating_candidate_shadow">#9937474f</color>

</resources>
