diff --git a/res/drawable/quickcontact_list_item_background.xml b/res/drawable/quickcontact_list_item_background.xml
index e6d773e..afb3947 100644
--- a/res/drawable/quickcontact_list_item_background.xml
+++ b/res/drawable/quickcontact_list_item_background.xml
@@ -14,7 +14,6 @@
      limitations under the License.
 -->
 
-<!-- TODO These all have to be refined -->
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item
         android:state_window_focused="false"
@@ -31,5 +30,5 @@
         android:state_focused="true"
         android:drawable="@drawable/list_focused_holo" />
     <item
-        android:drawable="@color/people_app_theme_color" />
+        android:drawable="@color/quickcontact_list_background" />
 </selector>
diff --git a/res/layout-sw580dp/quickcontact_activity.xml b/res/layout-sw580dp/quickcontact_activity.xml
index 21b5ad2..8c8bfae 100644
--- a/res/layout-sw580dp/quickcontact_activity.xml
+++ b/res/layout-sw580dp/quickcontact_activity.xml
@@ -32,12 +32,12 @@
             android:layout_height="200dip">
             <include layout="@layout/quickcontact_photo_container" />
         </FrameLayout>
+        <include layout="@layout/quickcontact_track" />
         <View
-            android:id="@+id/line_before_track"
+            android:id="@+id/line_after_track"
             android:layout_width="match_parent"
             android:layout_height="2dip"
-            android:background="@color/quickcontact_list_background" />
-        <include layout="@layout/quickcontact_track" />
+            android:background="@color/quickcontact_tab_indicator" />
         <android.support.v4.view.ViewPager
             android:id="@+id/item_list_pager"
             android:layout_width="match_parent"
diff --git a/res/layout-w470dp/quickcontact_activity.xml b/res/layout-w470dp/quickcontact_activity.xml
index 36d499d..dbd5260 100644
--- a/res/layout-w470dp/quickcontact_activity.xml
+++ b/res/layout-w470dp/quickcontact_activity.xml
@@ -42,6 +42,11 @@
             android:layout_height="match_parent"
             android:orientation="vertical">
             <include layout="@layout/quickcontact_track" />
+            <View
+                android:id="@+id/line_after_track"
+                android:layout_width="match_parent"
+                android:layout_height="2dip"
+                android:background="@color/quickcontact_tab_indicator" />
             <android.support.v4.view.ViewPager
                 android:id="@+id/item_list_pager"
                 android:background="@color/quickcontact_list_background"
diff --git a/res/layout/quickcontact_activity.xml b/res/layout/quickcontact_activity.xml
index 2f5a357..c8d0ad4 100644
--- a/res/layout/quickcontact_activity.xml
+++ b/res/layout/quickcontact_activity.xml
@@ -38,12 +38,12 @@
             ex:direction="widthToHeight">
             <include layout="@layout/quickcontact_photo_container" />
         </view>
+        <include layout="@layout/quickcontact_track" />
         <View
-            android:id="@+id/line_before_track"
+            android:id="@+id/line_after_track"
             android:layout_width="match_parent"
             android:layout_height="2dip"
-            android:background="@color/quickcontact_list_background" />
-        <include layout="@layout/quickcontact_track" />
+            android:background="@color/quickcontact_tab_indicator" />
         <android.support.v4.view.ViewPager
             android:id="@+id/item_list_pager"
             android:layout_width="match_parent"
diff --git a/res/layout/quickcontact_list_item.xml b/res/layout/quickcontact_list_item.xml
index 4ffa091..7929718 100755
--- a/res/layout/quickcontact_list_item.xml
+++ b/res/layout/quickcontact_list_item.xml
@@ -36,28 +36,30 @@
             android:id="@android:id/text1"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:textColor="@android:color/white"
+            android:textColor="@color/primary_text_color"
             android:textAppearance="?android:attr/textAppearanceMedium" />
         <TextView
             android:id="@android:id/text2"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:textColor="@android:color/white"
+            android:textColor="@color/primary_text_color"
             android:textAllCaps="true"
             android:textAppearance="?android:attr/textAppearanceSmall" />
     </LinearLayout>
     <View
         android:id="@+id/vertical_divider"
         android:layout_width="1dip"
-        android:layout_height="wrap_content"
+        android:layout_height="match_parent"
         android:layout_gravity="center_vertical"
-        android:background="@drawable/ic_divider_dashed_holo_dark" />
+        android:layout_marginTop="@dimen/detail_vertical_divider_vertical_margin"
+        android:layout_marginBottom="@dimen/detail_vertical_divider_vertical_margin"
+        android:background="?android:attr/dividerVertical" />
     <ImageView
         android:id="@+id/secondary_action_button"
         android:layout_width="wrap_content"
         android:layout_height="match_parent"
         android:paddingLeft="@dimen/detail_item_icon_margin"
         android:paddingRight="@dimen/detail_item_icon_margin"
-        android:background="@drawable/quickcontact_list_item_background"
+        android:background="?android:attr/selectableItemBackground"
         android:duplicateParentState="false" />
 </LinearLayout>
diff --git a/res/layout/quickcontact_track.xml b/res/layout/quickcontact_track.xml
index 8177174..bf25cb3 100644
--- a/res/layout/quickcontact_track.xml
+++ b/res/layout/quickcontact_track.xml
@@ -33,10 +33,10 @@
             <View
                 android:id="@+id/selected_tab_rectangle"
                 android:layout_width="60dip"
-                android:layout_height="8dip"
+                android:layout_height="6dip"
                 android:layout_alignBottom="@id/track"
                 android:layout_alignParentLeft="true"
-                android:background="@color/quickcontact_list_background" />
+                android:background="@color/quickcontact_tab_indicator" />
         </RelativeLayout>
     </HorizontalScrollView>
 </merge>
diff --git a/res/values-sw580dp-w720dp/styles.xml b/res/values-sw580dp-w720dp/styles.xml
index 1bda6aa..151b173 100644
--- a/res/values-sw580dp-w720dp/styles.xml
+++ b/res/values-sw580dp-w720dp/styles.xml
@@ -33,7 +33,7 @@
         <item name="list_item_gap_between_label_and_data">5dip</item>
         <item name="list_item_call_button_padding">14dip</item>
         <item name="list_item_vertical_divider_margin">5dip</item>
-        <item name="list_item_presence_icon_margin">30dip</item>
+        <item name="list_item_presence_icon_margin">4dip</item>
         <item name="list_item_photo_size">64dip</item>
         <item name="list_item_profile_photo_size">80dip</item>
         <item name="list_item_prefix_highlight_color">#729a27</item>
diff --git a/res/values-sw580dp/styles.xml b/res/values-sw580dp/styles.xml
index 62c0efb..4029401 100644
--- a/res/values-sw580dp/styles.xml
+++ b/res/values-sw580dp/styles.xml
@@ -33,7 +33,7 @@
         <item name="list_item_gap_between_label_and_data">5dip</item>
         <item name="list_item_call_button_padding">14dip</item>
         <item name="list_item_vertical_divider_margin">5dip</item>
-        <item name="list_item_presence_icon_margin">18dip</item>
+        <item name="list_item_presence_icon_margin">4dip</item>
         <item name="list_item_photo_size">64dip</item>
         <item name="list_item_profile_photo_size">80dip</item>
         <item name="list_item_prefix_highlight_color">#729a27</item>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 64d7dfb..0b8f1b7 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -17,8 +17,9 @@
     <color name="textColorIconOverlay">#fff</color>
     <color name="textColorIconOverlayShadow">#000</color>
 
-    <color name="quickcontact_list_divider">#ff48bde8</color>
-    <color name="quickcontact_list_background">#ff33b5e6</color>
+    <color name="quickcontact_list_divider">#ffcdcdcd</color>
+    <color name="quickcontact_list_background">#ffe2e2e2</color>
+    <color name="quickcontact_tab_indicator">#ff33b5e6</color>
 
     <color name="edit_divider">#ff666666</color>
 
diff --git a/src/com/android/contacts/list/ContactListItemView.java b/src/com/android/contacts/list/ContactListItemView.java
index ce1b119..f16102d 100644
--- a/src/com/android/contacts/list/ContactListItemView.java
+++ b/src/com/android/contacts/list/ContactListItemView.java
@@ -934,7 +934,7 @@
             mStatusView.setSingleLine(true);
             mStatusView.setEllipsize(getTextEllipsis());
             mStatusView.setTextAppearance(mContext, android.R.style.TextAppearance_Small);
-            mStatusView.setTextColor(Color.GRAY);
+            mStatusView.setTextColor(R.color.secondary_text_color);
             addView(mStatusView);
         }
         return mStatusView;
diff --git a/src/com/android/contacts/model/BaseAccountType.java b/src/com/android/contacts/model/BaseAccountType.java
index 0846197..aafa3ea 100644
--- a/src/com/android/contacts/model/BaseAccountType.java
+++ b/src/com/android/contacts/model/BaseAccountType.java
@@ -206,7 +206,6 @@
                 android.R.drawable.sym_action_call, 10, true,
                 R.layout.text_fields_editor_view, android.R.style.TextAppearance_Medium));
         kind.iconAltRes = R.drawable.ic_text_holo_light;
-        kind.iconAltResDark = R.drawable.ic_text_holo_dark;
         kind.actionHeader = new PhoneActionInflater();
         kind.actionAltHeader = new PhoneActionAltInflater();
         kind.actionBody = new SimpleInflater(Phone.NUMBER);
diff --git a/src/com/android/contacts/model/DataKind.java b/src/com/android/contacts/model/DataKind.java
index a3b31e3..40f6f99 100644
--- a/src/com/android/contacts/model/DataKind.java
+++ b/src/com/android/contacts/model/DataKind.java
@@ -27,10 +27,7 @@
     public String mimeType;
     public int titleRes;
     public int iconRes;
-    /** Icon used for secondary action when shown on top of a bright background */
     public int iconAltRes;
-    /** Icon used for secondary action when shown on top of a dark background */
-    public int iconAltResDark;
     public int weight;
     public boolean editable;
 
diff --git a/src/com/android/contacts/quickcontact/DataAction.java b/src/com/android/contacts/quickcontact/DataAction.java
index 827016f..109e8b0 100644
--- a/src/com/android/contacts/quickcontact/DataAction.java
+++ b/src/com/android/contacts/quickcontact/DataAction.java
@@ -107,7 +107,7 @@
                     if (hasPhone && hasSms) {
                         mIntent = phoneIntent;
                         mAlternateIntent = smsIntent;
-                        mAlternateIconRes = kind.iconAltResDark;
+                        mAlternateIconRes = kind.iconAltRes;
                     } else if (hasPhone) {
                         mIntent = phoneIntent;
                     } else if (hasSms) {
diff --git a/src/com/android/contacts/quickcontact/QuickContactActivity.java b/src/com/android/contacts/quickcontact/QuickContactActivity.java
index af18917..f22369f 100644
--- a/src/com/android/contacts/quickcontact/QuickContactActivity.java
+++ b/src/com/android/contacts/quickcontact/QuickContactActivity.java
@@ -83,9 +83,6 @@
 
 // TODO: Save selected tab index during rotation
 
-// Missing assets and specs:
-//   Pushed states for list items
-
 /**
  * Mostly translucent {@link Activity} that shows QuickContact dialog. It loads
  * data asynchronously, and then shows a popup with details centered around
@@ -115,8 +112,7 @@
     private ViewGroup mTrack;
     private HorizontalScrollView mTrackScroller;
     private View mSelectedTabRectangle;
-    /** Line before the track. Depending on the layout, this can be null */
-    private View mLineBeforeTrack;
+    private View mLineAfterTrack;
 
     private ImageButton mOpenDetailsButton;
     private ImageButton mOpenDetailsPushLayerButton;
@@ -172,7 +168,7 @@
         mOpenDetailsPushLayerButton = (ImageButton) findViewById(R.id.open_details_push_layer);
         mListPager = (ViewPager) findViewById(R.id.item_list_pager);
         mSelectedTabRectangle = findViewById(R.id.selected_tab_rectangle);
-        mLineBeforeTrack = findViewById(R.id.line_before_track);
+        mLineAfterTrack = findViewById(R.id.line_after_track);
 
         mFloatingLayout.setOnOutsideTouchListener(new View.OnTouchListener() {
             @Override
@@ -540,11 +536,9 @@
         }
 
         final boolean hasData = !mSortedActionMimeTypes.isEmpty();
-        if (mLineBeforeTrack != null) {
-            mLineBeforeTrack.setVisibility(hasData ? View.VISIBLE : View.GONE);
-        }
         mTrackScroller.setVisibility(hasData ? View.VISIBLE : View.GONE);
         mSelectedTabRectangle.setVisibility(hasData ? View.VISIBLE : View.GONE);
+        mLineAfterTrack.setVisibility(hasData ? View.VISIBLE : View.GONE);
         mListPager.setVisibility(hasData ? View.VISIBLE : View.GONE);
     }
 
diff --git a/src/com/android/contacts/quickcontact/QuickContactListFragment.java b/src/com/android/contacts/quickcontact/QuickContactListFragment.java
index 1c36ae1..7cbc7c8 100644
--- a/src/com/android/contacts/quickcontact/QuickContactListFragment.java
+++ b/src/com/android/contacts/quickcontact/QuickContactListFragment.java
@@ -113,6 +113,7 @@
                 final boolean hasAlternateAction = action.getAlternateIntent() != null;
                 alternateActionDivider.setVisibility(hasAlternateAction ? View.VISIBLE : View.GONE);
                 alternateActionButton.setImageDrawable(action.getAlternateIcon());
+                alternateActionButton.setVisibility(hasAlternateAction ? View.VISIBLE : View.GONE);
 
                 text1.setText(action.getBody());
                 text2.setText(action.getSubtitle());
