<?xml version="1.0" encoding="utf-8"?>
<!--
/*
 * Copyright (C) 2007-2008 Esmertec AG.
 * Copyright (C) 2007-2008 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>
    <!-- Activity background color -->
    <drawable name="class_zero_background">#7f040000</drawable>

    <!-- text color -->
    <drawable name="text_color_red">#ffff4444</drawable>
    <drawable name="text_color_black">#ff000000</drawable>
    <color name="text_hairline">#ffcccccc</color>
    <color name="message_count_color">#66333333</color>

    <!-- Chat "sent time" text background -->
    <color name="timestamp_color">#bf000000</color>

    <!-- the background color used for unread conversation -->
    <color name="unread_bgcolor">#ffffffff</color>
    <color name="read_bgcolor">#ffeeeeee</color>

    <color name="widget_sender_text_color_read">#555555</color>
    <color name="widget_sender_text_color_unread">#333333</color>
    <color name="widget_subject_text_color_read">#777777</color>
    <color name="widget_subject_text_color_unread">#555555</color>

</resources>
