diff --git a/res/drawable/ic_action_add_tab_inverted.xml b/res/drawable/ic_action_add_tab_inverted.xml
new file mode 100644
index 0000000..19312a6
--- /dev/null
+++ b/res/drawable/ic_action_add_tab_inverted.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+
+    <path
+        android:fillColor="@color/icon_white"
+        android:pathData="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z" />
+</vector>
diff --git a/res/drawable/ic_action_bookmark_inverted.xml b/res/drawable/ic_action_bookmark_inverted.xml
new file mode 100644
index 0000000..c0f5fec
--- /dev/null
+++ b/res/drawable/ic_action_bookmark_inverted.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+
+    <path
+        android:pathData="M0 0h24v24h-24z" />
+    <path
+        android:fillColor="@color/icon_white"
+        android:pathData="M12 21.35l-1.45-1.32c-5.15-4.67-8.55-7.75-8.55-11.53 0-3.08 2.42-5.5 5.5-5.5
+1.74 0 3.41 .81 4.5 2.09 1.09-1.28 2.76-2.09 4.5-2.09 3.08 0 5.5 2.42 5.5 5.5 0
+3.78-3.4 6.86-8.55 11.54l-1.45 1.31z" />
+</vector>
diff --git a/res/drawable/ic_action_history_backward_inverted.xml b/res/drawable/ic_action_history_backward_inverted.xml
new file mode 100644
index 0000000..1afe476
--- /dev/null
+++ b/res/drawable/ic_action_history_backward_inverted.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+
+    <path
+        android:fillColor="@color/icon_white"
+        android:pathData="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" />
+</vector>
diff --git a/res/drawable/ic_action_history_forward_inverted.xml b/res/drawable/ic_action_history_forward_inverted.xml
new file mode 100644
index 0000000..e73aa37
--- /dev/null
+++ b/res/drawable/ic_action_history_forward_inverted.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+
+    <path
+        android:fillColor="@color/icon_white"
+        android:pathData="M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z" />
+</vector>
diff --git a/res/drawable/ic_action_reload_inverted.xml b/res/drawable/ic_action_reload_inverted.xml
new file mode 100644
index 0000000..5a7d9d4
--- /dev/null
+++ b/res/drawable/ic_action_reload_inverted.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+
+    <path
+        android:fillColor="@color/icon_white"
+        android:pathData="M17.6,6.4C16.2,4.9 14.2,4 12,4c-4.4,0 -8,3.6 -8,8s3.6,8 8,8c3.7,0 6.8,-2.6 7.7,-6l-2.1,0c-0.8,2.3 -3,4 -5.6,4c-3.3,0 -6,-2.7 -6,-6s2.7,-6 6,-6c1.7,0 3.1,0.7 4.2,1.8L13,11l7,0L20,4L17.6,6.4z"/>
+</vector>
diff --git a/res/drawable/ic_action_stop_inverted.xml b/res/drawable/ic_action_stop_inverted.xml
new file mode 100644
index 0000000..04f4c40
--- /dev/null
+++ b/res/drawable/ic_action_stop_inverted.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+
+    <path
+        android:fillColor="@color/icon_white"
+        android:pathData="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59
+19 19 17.59 13.41 12z" />
+</vector>
diff --git a/res/drawable/navtab_close_background.xml b/res/drawable/navtab_close_background.xml
index 70883c4..5504ecd 100644
--- a/res/drawable/navtab_close_background.xml
+++ b/res/drawable/navtab_close_background.xml
@@ -15,7 +15,5 @@
 -->
 
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:state_focused="true" android:state_pressed="false" android:drawable="@color/navtab_bg" />
-    <item android:state_pressed="true" android:drawable="@color/navtab_bg" />
     <item android:drawable="@color/navtab_bg" />
 </selector>
diff --git a/res/layout-sw600dp/title_bar_nav.xml b/res/layout-sw600dp/title_bar_nav.xml
index 69017c7..5c30735 100644
--- a/res/layout-sw600dp/title_bar_nav.xml
+++ b/res/layout-sw600dp/title_bar_nav.xml
@@ -31,14 +31,14 @@
             style="@style/NavButton"
             android:layout_width="wrap_content"
             android:contentDescription="@string/accessibility_button_back"
-            android:src="@drawable/ic_action_history_backward" />
+            android:src="@drawable/ic_action_history_backward_inverted" />
 
         <ImageButton
             android:id="@+id/forward"
             style="@style/NavButton"
             android:layout_width="wrap_content"
             android:contentDescription="@string/accessibility_button_forward"
-            android:src="@drawable/ic_action_history_forward" />
+            android:src="@drawable/ic_action_history_forward_inverted" />
 
     </LinearLayout>
 
@@ -57,16 +57,6 @@
         android:layout_weight="1.0"
         android:orientation="horizontal">
 
-        <ImageView
-            android:id="@+id/magnify"
-            android:layout_width="44dp"
-            android:layout_height="match_parent"
-            android:src="@drawable/ic_action_search_normal"
-            android:layout_gravity="center_vertical"
-            android:paddingStart="6dp"
-            android:paddingEnd="6dp"
-            android:visibility="visible" />
-
         <com.android.browser.SiteTileView
             android:id="@+id/favicon_view"
             android:layout_width="44dp"
@@ -80,11 +70,11 @@
         <View
             android:id="@+id/separator"
             android:layout_width="1dp"
-            android:layout_height="36dp"
-            android:paddingTop="6dp"
+            android:layout_height="fill_parent"
+            android:paddingTop="8dp"
             android:paddingBottom="6dp"
             android:paddingStart="4dp"
-            android:paddingEnd="4dp"
+            android:paddingEnd="8dp"
             android:background="@color/icon_white" />
 
         <com.android.browser.UrlInputView
@@ -103,6 +93,7 @@
             android:paddingEnd="0dip"
             android:scrollHorizontally="true"
             android:singleLine="true"
+            android:textColorHint="@color/icon_white"
             android:textAppearance="?android:attr/textAppearanceMedium" />
 
         <ImageButton
@@ -110,14 +101,14 @@
             style="@style/NavButton"
             android:layout_width="wrap_content"
             android:contentDescription="@string/accessibility_button_addbookmark"
-            android:src="@drawable/ic_action_bookmark" />
+            android:src="@drawable/ic_action_bookmark_inverted" />
 
         <ImageButton
             android:id="@+id/clear"
             style="@style/NavButton"
             android:layout_width="wrap_content"
             android:contentDescription="@string/accessibility_button_clear"
-            android:src="@drawable/ic_action_stop" />
+            android:src="@drawable/ic_action_stop_inverted" />
 
         <ImageButton
             android:id="@+id/voice"
@@ -128,22 +119,6 @@
     </LinearLayout>
 
     <ImageButton
-        android:id="@+id/search"
-        style="@style/NavButton"
-        android:layout_width="wrap_content"
-        android:contentDescription="@string/accessibility_button_search"
-        android:gravity="center_vertical"
-        android:src="@drawable/ic_action_search_normal" />
-
-    <ImageButton
-        android:id="@+id/all_btn"
-        style="@style/NavButton"
-        android:layout_width="wrap_content"
-        android:contentDescription="@string/bookmarks"
-        android:scaleType="center"
-        android:src="@drawable/ic_deco_bookmarks_normal" />
-
-    <ImageButton
         android:id="@+id/more_browser_settings"
-        style="@style/OverflowButton" />
+        style="@style/OverflowButtonInverted" />
 </com.android.browser.NavigationBarTablet>
diff --git a/res/layout-sw600dp/title_bar_snapshot.xml b/res/layout-sw600dp/title_bar_snapshot.xml
index 8c8189a..0cb6a0f 100644
--- a/res/layout-sw600dp/title_bar_snapshot.xml
+++ b/res/layout-sw600dp/title_bar_snapshot.xml
@@ -18,7 +18,7 @@
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
-    android:background="@android:color/white"
+    android:background="@color/primary"
     android:orientation="horizontal" >
     <ImageView
         android:id="@+id/reader_icon"
@@ -67,4 +67,4 @@
         android:id="@+id/more"
         style="@style/OverflowButton" />
 
-</com.android.browser.SnapshotBar>
\ No newline at end of file
+</com.android.browser.SnapshotBar>
diff --git a/res/layout/browser_tab_crash.xml b/res/layout/browser_tab_crash.xml
index 846f7bf..86f8928 100644
--- a/res/layout/browser_tab_crash.xml
+++ b/res/layout/browser_tab_crash.xml
@@ -31,7 +31,7 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:orientation="vertical"
-    android:background="@android:color/white">
+    android:background="@color/white">
 
     <TextView
         android:layout_width="wrap_content"
@@ -40,7 +40,7 @@
         android:paddingTop="20dp"
         android:paddingBottom="20dp"
         android:textSize="20dp"
-        android:textColor="@android:color/black"
+        android:textColor="@color/black"
         android:text="@string/browser_tab_crash_snap" />
 
     <Button
@@ -58,7 +58,7 @@
         android:paddingEnd="10dp"
         android:paddingTop="20dp"
         android:textSize="15dp"
-        android:textColor="@android:color/black"
+        android:textColor="@color/black"
         android:text="@string/browser_tab_crash_message" />
 
-</LinearLayout>
\ No newline at end of file
+</LinearLayout>
diff --git a/res/layout/suggestion_item.xml b/res/layout/suggestion_item.xml
index a8e9d1a..c75d295 100644
--- a/res/layout/suggestion_item.xml
+++ b/res/layout/suggestion_item.xml
@@ -25,6 +25,8 @@
     android:orientation="horizontal"
     android:gravity="center_vertical"
     android:baselineAligned="false"
+    android:paddingStart="@dimen/suggestion_padding"
+    android:paddingEnd="@dimen/suggestion_padding"
     >
     <LinearLayout
         android:id="@+id/suggestion"
diff --git a/res/layout/tab_bar.xml b/res/layout/tab_bar.xml
index 09c9673..ff2d5a0 100644
--- a/res/layout/tab_bar.xml
+++ b/res/layout/tab_bar.xml
@@ -28,5 +28,5 @@
         style="@style/NavButton"
         android:layout_width="wrap_content"
         android:background="@drawable/add_tab_selector"
-        android:src="@drawable/ic_action_add_tab" />
+        android:src="@drawable/ic_action_add_tab_inverted" />
 </merge>
diff --git a/res/layout/tab_title.xml b/res/layout/tab_title.xml
index 5dde66a..789aa63 100644
--- a/res/layout/tab_title.xml
+++ b/res/layout/tab_title.xml
@@ -30,7 +30,7 @@
         android:layout_height="match_parent"
         android:gravity="center_vertical"
         android:src="@drawable/ic_suggest_history_normal"
-            android:contentDescription="@string/accessibility_state_frozen"
+        android:contentDescription="@string/accessibility_state_frozen"
         android:visibility="gone" />
     <ImageView
         android:id="@+id/favicon"
@@ -62,5 +62,5 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:contentDescription="@string/accessibility_button_closetab"
-        android:src="@drawable/ic_action_close" />
+        android:src="@drawable/ic_action_close_inverted" />
 </merge>
diff --git a/res/layout/title_bar_nav.xml b/res/layout/title_bar_nav.xml
index c22c716..017e39e 100644
--- a/res/layout/title_bar_nav.xml
+++ b/res/layout/title_bar_nav.xml
@@ -89,7 +89,6 @@
             android:paddingEnd="6dp"
             android:scrollHorizontally="true"
             android:singleLine="true"
-            android:fontFamily="sans-serif-condensed"
             android:textAppearance="?android:attr/textAppearanceMedium"
             android:textColorHint="@color/icon_white" />
 
diff --git a/res/values-sw600dp-v21/colors.xml b/res/values-sw600dp-v21/colors.xml
new file mode 100644
index 0000000..99d9d40
--- /dev/null
+++ b/res/values-sw600dp-v21/colors.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016 The CyanogenMod 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>
+    <color name="TabNavBackgroundColor">@color/primary</color>
+</resources>
diff --git a/res/values-sw600dp-v21/dimens.xml b/res/values-sw600dp-v21/dimens.xml
new file mode 100644
index 0000000..e79b40e
--- /dev/null
+++ b/res/values-sw600dp-v21/dimens.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The CyanogenMod 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:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+    <dimen name="suggestion_padding">28dp</dimen>
+
+</resources>
diff --git a/res/values-sw600dp-v21/styles.xml b/res/values-sw600dp-v21/styles.xml
new file mode 100644
index 0000000..397a872
--- /dev/null
+++ b/res/values-sw600dp-v21/styles.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The CyanogenMod 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>
+
+    <style name="BrowserTheme" parent="@style/BrowserBase">
+        <item name="android:colorPrimary">@color/primary</item>
+        <item name="android:colorPrimaryDark">@color/primary_dark</item>
+        <item name="android:colorAccent">@color/accent</item>
+        <item name="android:windowBackground">@color/browser_window_background</item>
+        <item name="android:windowActionBar">true</item>
+        <item name="android:windowNoTitle">false</item>
+        <item name="android:actionBarStyle">@style/LightActionBarSolidStyle</item>
+        <item name="android:actionBarSize">64dip</item>
+    </style>
+
+    <style name="ComboViewTheme" parent="@style/BrowserBase"/>
+
+    <style name="LightActionBarSolidStyle" parent="@android:style/ThemeOverlay.Material.Dark.ActionBar">
+        <item name="android:background">@color/primary</item>
+    </style>
+
+</resources>
diff --git a/res/values-v17/styles.xml b/res/values-v17/styles.xml
index dd4a3fc..6b05042 100644
--- a/res/values-v17/styles.xml
+++ b/res/values-v17/styles.xml
@@ -66,7 +66,6 @@
         <item name="android:textColor">@color/black</item>
         <item name="android:textStyle">normal</item>
         <item name="android:textAlignment">center</item>
-        <item name="android:fontFamily">roboto</item>
     </style>
 
     <style name="BookmarkPathText">
@@ -75,7 +74,6 @@
         <item name="android:background">?android:attr/selectableItemBackgroundBorderless</item>
         <item name="android:textStyle">normal</item>
         <item name="android:textAlignment">center</item>
-        <item name="android:fontFamily">roboto</item>
     </style>
 
     <style name="ShortcutTheme" parent="@style/BrowserBase">
@@ -134,13 +132,11 @@
         <item name="android:windowExitAnimation">@anim/title_bar_exit</item>
     </style>
 
-    <style name="TabTitleSelected" parent="@style/TextAppearance.Small">
-        <item name="android:textColor">?android:attr/textColorPrimary</item>
-        <item name="android:textStyle">bold</item>
+    <style name="TabTitleSelected" parent="@style/TextAppearance.Medium">
+        <item name="android:textColor">@color/white</item>
     </style>
-    <style name="TabTitleUnselected" parent="@style/TextAppearance.Small">
-        <item name="android:textColor">?android:attr/textColorSecondary</item>
-        <item name="android:textStyle">normal</item>
+    <style name="TabTitleUnselected" parent="@style/TextAppearance.Medium">
+        <item name="android:textColor">@color/icon_white</item>
     </style>
 
     <style name="AutofillProfileTextView">
diff --git a/res/values-v21/styles.xml b/res/values-v21/styles.xml
index 3c88873..0feb643 100644
--- a/res/values-v21/styles.xml
+++ b/res/values-v21/styles.xml
@@ -60,26 +60,30 @@
         <item name="android:colorPrimaryDark">@color/accent_dark</item>
         <item name="android:colorAccent">@color/icon_white</item>
     </style>
+
     <style name="MyNavAddStyle" parent="@style/DialogWhenLarge">
         <item name="android:colorPrimary">@color/mynav_primary</item>
         <item name="android:colorPrimaryDark">@color/mynav_primary_dark</item>
         <item name="android:colorAccent">@color/mynav_accent</item>
     </style>
 
-    <style name="PopupMenuStyle" parent="@android:style/Widget.Material.Light.PopupMenu">
-    </style>
+    <style name="PopupMenuStyle" parent="@android:style/Widget.Material.Light.PopupMenu"/>
+
     <style name="Suggestions" parent="@android:style/Widget.Material.AutoCompleteTextView">
         <item name="android:popupBackground">@color/white</item>
         <item name="android:dropDownHorizontalOffset">0dip</item>
         <item name="android:dropDownVerticalOffset">0dip</item>
         <item name="android:textColor">@color/icon_white</item>
         <item name="android:textColorHint">@color/icon_black</item>
+        <item name="android:paddingStart">@dimen/suggestion_padding</item>
+        <item name="android:paddingEnd">@dimen/suggestion_padding</item>
     </style>
+
     <style name="Widget.UrlInputView" parent="BrowserTheme">
-        <item name="android:colorAccent">@color/white</item>
         <item name="android:textColor">@color/icon_white</item>
         <item name="android:textColorHint">@color/icon_white</item>
     </style>
+
     <style name="TextAppearance.Medium" parent="@android:style/TextAppearance.Material.Medium" />
     <style name="TextAppearance.Small" parent="@android:style/TextAppearance.Material.Small" />
 
@@ -100,9 +104,6 @@
         <item name="android:layout_height">@dimen/fab_size</item>
         <item name="android:layout_gravity">center</item>
     </style>
-    <!-- level 2 parents -->
-
-    <!-- common theme elements -->
 
     <style name="SettingsTheme" parent="@android:style/Theme.Material.Light.DarkActionBar">
         <item name="android:colorPrimary">@color/primary</item>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 86359ec..a9cb524 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -39,7 +39,6 @@
     <color name="browser_window_background">#F2F2F2</color>
     <color name="accent_dark">#346AC2</color>
     <color name="navigation_bars">#263238</color>
-    <color name="browser_window_background">#F2F2F2</color>
     <color name="edge_title">#0096a9</color>
     <color name="floating_action_button_touch_tint">#DBA000</color>
     <color name="download_text_hint">#b3b3b3</color>
@@ -54,7 +53,7 @@
     <color name="NavigationBarBackground">@color/primary</color>
     <color name="NavigationBarBackgroundIncognito">@color/black</color>
     <color name="PopupBackground">@color/white</color>
-    <color name="TabNavBackgroundColor">@color/white</color>
+    <color name="TabNavBackgroundColor">#fff</color>
     <color name="TabPassiveMessageBackground">#f2f2f2</color>
     <color name="TabPassiveMessageLine">#b3b3b3</color>
 
@@ -67,21 +66,21 @@
     <color name="bookmarkListFaviconBackground">@color/white</color>
     <color name="bookmarkLabelColor">@color/black</color>
     <color name="comboViewActionBarColor">@color/white</color>
-    <color name="comboViewBackground">#efeff0</color>
+    <color name="comboViewBackground">@color/browser_window_background</color>
     <color name="tabFaviconBackground">@color/primary</color>
     <color name="tabFocusHighlight">#99CC00</color>
     <color name="tabViewTitleBackground">@color/black</color>
     <color name="navtab_bg">@color/black</color>
 
-    <color name="TileBadgeTextAvoid">#fff</color>
-    <color name="TileBadgeTextUntrusted">#333</color>
-    <color name="TileBadgeTextUnknown">#333</color>
-    <color name="TileBadgeTextVerified">#fff</color>
+    <color name="TileBadgeTextAvoid">@color/white</color>
+    <color name="TileBadgeTextUntrusted">@color/black</color>
+    <color name="TileBadgeTextUnknown">@color/black</color>
+    <color name="TileBadgeTextVerified">@color/white</color>
 
     <!-- xml configuration for FolderTileView -->
-    <color name="FolderTileBackground">#555</color>
-    <color name="FolderTileTitle">#fff</color>
-    <color name="FolderTileCount">#fff</color>
+    <color name="FolderTileBackground">@color/black</color>
+    <color name="FolderTileTitle">@color/white</color>
+    <color name="FolderTileCount">@color/white</color>
 
     <!-- location infobar color -->
     <color name="infobar_accent_blue">@color/accent</color>
diff --git a/res/values/dimensions.xml b/res/values/dimensions.xml
index 83e161a..33ae63f 100755
--- a/res/values/dimensions.xml
+++ b/res/values/dimensions.xml
@@ -92,6 +92,8 @@
     <dimen name="download_icon_size">36dp</dimen>
     <dimen name="download_text_hint">18sp</dimen>
 
+    <dimen name="suggestion_padding">4dp</dimen>
+
     <!-- FAB Dimensions -->
     <dimen name="fab_size">56dp</dimen>
     <dimen name="fab_margin">16dp</dimen>
diff --git a/src/com/android/browser/NavigationBarBase.java b/src/com/android/browser/NavigationBarBase.java
index eb8dc53..246235a 100644
--- a/src/com/android/browser/NavigationBarBase.java
+++ b/src/com/android/browser/NavigationBarBase.java
@@ -727,7 +727,7 @@
         mHandler.removeMessages(WEBREFINER_COUNTER_MSG);
         mHandler.sendEmptyMessageDelayed(WEBREFINER_COUNTER_MSG,
                 WEBREFINER_COUNTER_MSG_DELAY);
-        mStopButton.setImageResource(R.drawable.ic_action_stop);
+        mStopButton.setImageResource(R.drawable.ic_action_stop_inverted);
         mStopButton.setContentDescription(getResources().
                 getString(R.string.accessibility_button_stop));
     }
@@ -736,7 +736,7 @@
         if (!isEditingUrl()) {
             mFaviconTile.setVisibility(View.VISIBLE);
         }
-        mStopButton.setImageResource(R.drawable.ic_action_reload);
+        mStopButton.setImageResource(R.drawable.ic_action_reload_inverted);
         mStopButton.setContentDescription(getResources().
                 getString(R.string.accessibility_button_refresh));
     }
diff --git a/src/com/android/browser/NavigationBarTablet.java b/src/com/android/browser/NavigationBarTablet.java
index ce482d9..d2d63b3 100644
--- a/src/com/android/browser/NavigationBarTablet.java
+++ b/src/com/android/browser/NavigationBarTablet.java
@@ -33,8 +33,6 @@
     private ImageButton mBackButton;
     private ImageButton mForwardButton;
     private ImageView mStar;
-    private ImageView mSearchButton;
-    private View mAllButton;
     private View mNavButtons;
     private boolean mHideNavButtons;
 
@@ -60,18 +58,14 @@
     @Override
     protected void onFinishInflate() {
         super.onFinishInflate();
-        mAllButton = findViewById(R.id.all_btn);
         mNavButtons = findViewById(R.id.navbuttons);
         mBackButton = (ImageButton) findViewById(R.id.back);
         mForwardButton = (ImageButton) findViewById(R.id.forward);
         mStar = (ImageView) findViewById(R.id.star);
-        mSearchButton = (ImageView) findViewById(R.id.search);
         mUrlContainer = findViewById(R.id.urlbar_focused);
         mBackButton.setOnClickListener(this);
         mForwardButton.setOnClickListener(this);
         mStar.setOnClickListener(this);
-        mAllButton.setOnClickListener(this);
-        mSearchButton.setOnClickListener(this);
         mUrlInput.setContainer(mUrlContainer);
         mUrlInput.setStateListener(this);
     }
@@ -124,10 +118,6 @@
             if (intent != null) {
                 getContext().startActivity(intent);
             }
-        } else if (mAllButton == v) {
-            mUiController.bookmarksOrHistoryPicker(ComboViews.Bookmarks);
-        } else if (mSearchButton == v) {
-            mBaseUi.editUrl(true, true);
         } else {
             super.onClick(v);
         }
@@ -140,14 +130,12 @@
             if (mHideNavButtons) {
                 hideNavButtons();
             }
-            mSearchButton.setVisibility(View.GONE);
             mStar.setVisibility(View.GONE);
         } else {
             if (mHideNavButtons) {
                 showNavButtons();
             }
             showHideStar(mUiController.getCurrentTab());
-            mSearchButton.setVisibility(View.VISIBLE);
         }
     }
 
diff --git a/src/com/android/browser/SiteTileView.java b/src/com/android/browser/SiteTileView.java
index 8d69dba..0c93bd0 100644
--- a/src/com/android/browser/SiteTileView.java
+++ b/src/com/android/browser/SiteTileView.java
@@ -304,7 +304,7 @@
                 sDefaultSiteBitmap = BitmapFactory.decodeResource(getResources(),
                         DEFAULT_SITE_FAVICON);
             mFaviconBitmap = sDefaultSiteBitmap;
-            fundamentalColor = 0xFF262626;
+            fundamentalColor = 0xFFFAFAFA;
         }
 
         if (mFaviconBitmap != null) {
@@ -343,7 +343,7 @@
 
         // bitmap paint (copy, smooth scale)
         sBitmapPaint = new Paint();
-        sBitmapPaint.setColor(Color.BLACK);
+        sBitmapPaint.setColor(Color.WHITE);
         sBitmapPaint.setFilterBitmap(true);
 
         // badge text paint (anti-aliased)
diff --git a/src/com/android/browser/SnapshotBar.java b/src/com/android/browser/SnapshotBar.java
index eeb300b..926c4ca 100644
--- a/src/com/android/browser/SnapshotBar.java
+++ b/src/com/android/browser/SnapshotBar.java
@@ -51,7 +51,6 @@
     private ImageView mReadericon;
     private TextView mDate;
     private TextView mTitle;
-    private View mBookmarks;
     private TitleBar mTitleBar;
     private View mTabSwitcher;
     private TextView mTabText;
@@ -114,15 +113,11 @@
         mReadericon = (ImageView) findViewById(R.id.reader_icon);
         mDate = (TextView) findViewById(R.id.date);
         mTitle = (TextView) findViewById(R.id.title);
-        mBookmarks = findViewById(R.id.all_btn);
         mTabSwitcher = findViewById(R.id.tab_switcher);
         mTabText = (TextView) findViewById(R.id.tab_switcher_text);
         mOverflowMenu = findViewById(R.id.more);
         mToggleContainer = findViewById(R.id.toggle_container);
 
-        if (mBookmarks != null) {
-            mBookmarks.setOnClickListener(this);
-        }
         if (mTabSwitcher != null) {
             mTabSwitcher.setOnClickListener(this);
         }
@@ -196,9 +191,7 @@
 
     @Override
     public void onClick(View v) {
-        if (mBookmarks == v) {
-            mTitleBar.getUiController().bookmarksOrHistoryPicker(ComboViews.Bookmarks);
-        } else if (mTabSwitcher == v) {
+        if (mTabSwitcher == v) {
             ((PhoneUi) mTitleBar.getUi()).toggleNavScreen();
         } else if (mOverflowMenu == v) {
             NavigationBarBase navBar = mTitleBar.getNavigationBar();
diff --git a/src/com/android/browser/TabBar.java b/src/com/android/browser/TabBar.java
index 378557e..ed49563 100644
--- a/src/com/android/browser/TabBar.java
+++ b/src/com/android/browser/TabBar.java
@@ -354,8 +354,8 @@
                             getColor(R.color.NavigationBarBackground));
                     Bitmap inactiveTexture = Bitmap.createBitmap(
                             mCurrentTextureWidth, mCurrentTextureHeight, Bitmap.Config.ARGB_8888);
-                    inactiveTexture.eraseColor(getResources().
-                            getColor(R.color.TabNavBackgroundColor));
+                    //inactiveTexture.eraseColor(getResources().
+                    //        getColor(R.color.TabNavBackgroundColor));
 
                     mActiveShader = new BitmapShader(activeTexture,
                             Shader.TileMode.CLAMP, Shader.TileMode.CLAMP);
