diff --git a/OWNERS b/OWNERS
index 3c22c9a..14bb338 100644
--- a/OWNERS
+++ b/OWNERS
@@ -4,8 +4,6 @@
 rlagos@google.com # OWNER for SUW related code
 alexstetson@google.com # OWNER for Car Settings related code
 
-# TV Settings
-leifhendrik@google.com
-
 # Mobile Settings
-tmfang@google.com
+stanleytfwang@google.com
+chiujason@google.com
diff --git a/res/drawable/search_bar_selected_background.xml b/res/drawable/search_bar_selected_background.xml
new file mode 100644
index 0000000..494302a
--- /dev/null
+++ b/res/drawable/search_bar_selected_background.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2022 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.
+-->
+
+<ripple xmlns:android="http://schemas.android.com/apk/res/android"
+        android:color="?android:attr/colorControlHighlight">
+    <item android:drawable="@color/search_bar_background"/>
+</ripple>
diff --git a/res/layout/search_panel.xml b/res/layout/search_panel.xml
index 5f621cd..990d11a 100644
--- a/res/layout/search_panel.xml
+++ b/res/layout/search_panel.xml
@@ -25,7 +25,6 @@
         android:id="@+id/search_bar_container"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:background="@color/search_panel_background"
         android:elevation="4dp">
         <androidx.cardview.widget.CardView
             android:id="@+id/search_bar"
@@ -33,7 +32,6 @@
             android:layout_height="wrap_content"
             android:layout_margin="@dimen/search_bar_margin"
             app:cardCornerRadius="2dp"
-            app:cardBackgroundColor="?android:attr/colorBackground"
             app:cardElevation="2dp">
             <Toolbar
                 android:id="@+id/search_toolbar"
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index a7a52b3..db9af8b 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -17,7 +17,7 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="applications_settings" msgid="3446736638853404682">"Звесткі аб праграме"</string>
+    <string name="applications_settings" msgid="3446736638853404682">"Інфармацыя пра праграму"</string>
     <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
     <string name="accessibility_settings" msgid="1488998032020612740">"Спецыяльныя магчымасці"</string>
     <string name="physical_keyboard_title" msgid="3955072245281785000">"Фізічная клавіятура"</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 07d6ab4..aa21ed9 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -17,7 +17,7 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="applications_settings" msgid="3446736638853404682">"Sovellustiedot"</string>
+    <string name="applications_settings" msgid="3446736638853404682">"Sovelluksen tiedot"</string>
     <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
     <string name="accessibility_settings" msgid="1488998032020612740">"Esteettömyys"</string>
     <string name="physical_keyboard_title" msgid="3955072245281785000">"Fyysinen näppäimistö"</string>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index 1257aef..6e32a6a 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -19,7 +19,7 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="applications_settings" msgid="3446736638853404682">"ಆ್ಯಪ್ ಮಾಹಿತಿ"</string>
     <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
-    <string name="accessibility_settings" msgid="1488998032020612740">"ಆ್ಯಕ್ಸೆಸಿಬಿಲಿಟಿ"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ಪ್ರವೇಶಿಸುವಿಕೆ"</string>
     <string name="physical_keyboard_title" msgid="3955072245281785000">"ಭೌತಿಕ ಕೀಬೋರ್ಡ್"</string>
     <string name="add_virtual_keyboard" msgid="542703692821933851">"ಕೀಬೋರ್ಡ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸಿ"</string>
     <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ಸೆಟ್ಟಿಂಗ್‌ಗಳ ಸೂಚನೆಗಳು"</string>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index d5c2f78..89cf318 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -22,7 +22,7 @@
     <string name="accessibility_settings" msgid="1488998032020612740">"Атайын мүмкүнчүлүктөр"</string>
     <string name="physical_keyboard_title" msgid="3955072245281785000">"Аппараттык баскычтоп"</string>
     <string name="add_virtual_keyboard" msgid="542703692821933851">"Баскычтопторду башкаруу"</string>
-    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Параметрлерди сунуштоо"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Жөндөөлөрдү сунуштоо"</string>
     <string name="search_clear_history" msgid="6232116698940067519">"Таржымалды тазалоо"</string>
     <string name="search_no_results" msgid="6855095945475439835">"Бир да натыйжа жок"</string>
 </resources>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index 55c1bdc..b209564 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -20,7 +20,7 @@
     <string name="applications_settings" msgid="3446736638853404682">"ຂໍ້ມູນແອັບ"</string>
     <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
     <string name="accessibility_settings" msgid="1488998032020612740">"ການຊ່ວຍເຂົ້າເຖິງ"</string>
-    <string name="physical_keyboard_title" msgid="3955072245281785000">"ແປ້ນພິມພາຍນອກ"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ແປ້ນພິມແທ້"</string>
     <string name="add_virtual_keyboard" msgid="542703692821933851">"ຈັດການແປ້ນພິມ"</string>
     <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ການແນະນຳການຕັ້ງຄ່າ"</string>
     <string name="search_clear_history" msgid="6232116698940067519">"ລຶບລ້າງປະຫວັດ"</string>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index e254097..a4f4cb7 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -19,7 +19,7 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="applications_settings" msgid="3446736638853404682">"အက်ပ်အချက်အလက်များ"</string>
     <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
-    <string name="accessibility_settings" msgid="1488998032020612740">"အများသုံးနိုင်မှု"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"အများသုံးစွဲနိုင်မှု"</string>
     <string name="physical_keyboard_title" msgid="3955072245281785000">"ကီးဘုတ် ခလုတ်ခုံ"</string>
     <string name="add_virtual_keyboard" msgid="542703692821933851">"ကီးဘုတ်များ စီမံခန့်ခွဲရန်"</string>
     <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ဆက်တင် အကြံပြုချက်များ"</string>
diff --git a/res/values-night/colors.xml b/res/values-night/colors.xml
new file mode 100644
index 0000000..3be2c99
--- /dev/null
+++ b/res/values-night/colors.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  Copyright (C) 2017 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
+    xmlns:androidprv="http://schemas.android.com/apk/prv/res/android">
+
+    <color name="search_bar_background">?androidprv:attr/colorSurfaceVariant</color>
+
+</resources>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index ab0504c..61f1404 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -21,8 +21,8 @@
     <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
     <string name="accessibility_settings" msgid="1488998032020612740">"Accesibilitate"</string>
     <string name="physical_keyboard_title" msgid="3955072245281785000">"Tastatură fizică"</string>
-    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gestionează tastaturile"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gestionați tastaturile"</string>
     <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Sugestii de setări"</string>
-    <string name="search_clear_history" msgid="6232116698940067519">"Șterge istoricul"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Ștergeți istoricul"</string>
     <string name="search_no_results" msgid="6855095945475439835">"Niciun rezultat"</string>
 </resources>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 24e57a6..6fb1855 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -19,7 +19,7 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="applications_settings" msgid="3446736638853404682">"Podatki o aplikacijah"</string>
     <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
-    <string name="accessibility_settings" msgid="1488998032020612740">"Dostopnost"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Funkcije za ljudi s posebnimi potrebami"</string>
     <string name="physical_keyboard_title" msgid="3955072245281785000">"Fizična tipkovnica"</string>
     <string name="add_virtual_keyboard" msgid="542703692821933851">"Upravljanje tipkovnic"</string>
     <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Predlogi nastavitev"</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index 1184cf5..6793b3a 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -19,7 +19,7 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="applications_settings" msgid="3446736638853404682">"Про додаток"</string>
     <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
-    <string name="accessibility_settings" msgid="1488998032020612740">"Доступність"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Спеціальні можливості"</string>
     <string name="physical_keyboard_title" msgid="3955072245281785000">"Фізична клавіатура"</string>
     <string name="add_virtual_keyboard" msgid="542703692821933851">"Керувати клавіатурами"</string>
     <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Пропозиції налаштувань"</string>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 19a7f31..4cb53a0 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -19,7 +19,7 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="applications_settings" msgid="3446736638853404682">"Ilova haqida"</string>
     <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
-    <string name="accessibility_settings" msgid="1488998032020612740">"Qulayliklar"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Maxsus imkoniyatlar"</string>
     <string name="physical_keyboard_title" msgid="3955072245281785000">"Tashqi klaviatura"</string>
     <string name="add_virtual_keyboard" msgid="542703692821933851">"Klaviaturalarni boshqarish"</string>
     <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Tavsiya etiladigan sozlamalar"</string>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index a2105f0..5c3b05c 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -18,5 +18,5 @@
 <resources>
     <color name="launcher_background_color">#ff008577</color>
 
-    <color name="search_panel_background">#f2f2f2</color>
+    <color name="search_bar_background">?android:attr/colorBackground</color>
 </resources>
diff --git a/src/com/android/settings/intelligence/search/SearchFragment.java b/src/com/android/settings/intelligence/search/SearchFragment.java
index c76eda3..97445ff 100644
--- a/src/com/android/settings/intelligence/search/SearchFragment.java
+++ b/src/com/android/settings/intelligence/search/SearchFragment.java
@@ -23,6 +23,7 @@
 import android.content.Context;
 import android.os.Bundle;
 import androidx.annotation.VisibleForTesting;
+import androidx.cardview.widget.CardView;
 import androidx.loader.content.Loader;
 import androidx.loader.app.LoaderManager;
 import androidx.recyclerview.widget.LinearLayoutManager;
@@ -149,6 +150,9 @@
 
         mNoResultsView = view.findViewById(R.id.no_results_layout);
 
+        final CardView cardView = view.findViewById(R.id.search_bar);
+        cardView.setBackgroundResource(R.drawable.search_bar_selected_background);
+
         final Toolbar toolbar = view.findViewById(R.id.search_toolbar);
         activity.setActionBar(toolbar);
         activity.getActionBar().setDisplayHomeAsUpEnabled(true);
diff --git a/src/com/android/settings/intelligence/suggestions/model/CandidateSuggestion.java b/src/com/android/settings/intelligence/suggestions/model/CandidateSuggestion.java
index 2502e2a..c04e7d4 100644
--- a/src/com/android/settings/intelligence/suggestions/model/CandidateSuggestion.java
+++ b/src/com/android/settings/intelligence/suggestions/model/CandidateSuggestion.java
@@ -230,8 +230,8 @@
                 .setSummary(summary)
                 .setFlags(flags)
                 .setIcon(icon)
-                .setPendingIntent(PendingIntent
-                        .getActivity(mContext, 0 /* requestCode */, mIntent, 0 /* flags */));
+                .setPendingIntent(PendingIntent.getActivity(
+                        mContext, 0 /* requestCode */, mIntent, PendingIntent.FLAG_IMMUTABLE));
     }
 
     /**
diff --git a/src/com/android/settings/intelligence/suggestions/ranking/SuggestionRanker.java b/src/com/android/settings/intelligence/suggestions/ranking/SuggestionRanker.java
index 61c08e9..f8faba0 100644
--- a/src/com/android/settings/intelligence/suggestions/ranking/SuggestionRanker.java
+++ b/src/com/android/settings/intelligence/suggestions/ranking/SuggestionRanker.java
@@ -40,15 +40,14 @@
     // relevance metric for ranking the suggestion items. This model is learned with off-line data
     // by training a binary classifier to detect the clicked items. The higher the obtained
     // relevance metric, the higher chance of getting clicked.
-    private static final Map<String, Double> WEIGHTS = new HashMap<String, Double>() {{
-        put(SuggestionFeaturizer.FEATURE_IS_SHOWN, 5.05140842519);
-        put(SuggestionFeaturizer.FEATURE_IS_DISMISSED, 2.29641455171);
-        put(SuggestionFeaturizer.FEATURE_IS_CLICKED, -2.98812233623);
-        put(SuggestionFeaturizer.FEATURE_TIME_FROM_LAST_SHOWN, 5.02807250202);
-        put(SuggestionFeaturizer.FEATURE_TIME_FROM_LAST_DISMISSED, 2.49589700842);
-        put(SuggestionFeaturizer.FEATURE_TIME_FROM_LAST_CLICKED, -4.3377039948);
-        put(SuggestionFeaturizer.FEATURE_SHOWN_COUNT, -2.35993512546);
-    }};
+    private static final Map<String, Double> WEIGHTS = Map.of(
+            SuggestionFeaturizer.FEATURE_IS_SHOWN, 5.05140842519,
+            SuggestionFeaturizer.FEATURE_IS_DISMISSED, 2.29641455171,
+            SuggestionFeaturizer.FEATURE_IS_CLICKED, -2.98812233623,
+            SuggestionFeaturizer.FEATURE_TIME_FROM_LAST_SHOWN, 5.02807250202,
+            SuggestionFeaturizer.FEATURE_TIME_FROM_LAST_DISMISSED, 2.49589700842,
+            SuggestionFeaturizer.FEATURE_TIME_FROM_LAST_CLICKED, -4.3377039948,
+            SuggestionFeaturizer.FEATURE_SHOWN_COUNT, -2.35993512546);
 
     private final long mMaxSuggestionsDisplayCount;
     private final SuggestionFeaturizer mSuggestionFeaturizer;
