diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index a7675b1..4c41199 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -21,7 +21,8 @@
 
     <application
         android:allowBackup="false"
-        android:icon="@mipmap/ic_launcher_calculator"
+        android:appCategory="productivity"
+        android:icon="@mipmap/ic_launcher"
         android:label="@string/app_name"
         android:supportsRtl="true">
 
diff --git a/res/drawable/ic_del.xml b/res/drawable/ic_del.xml
new file mode 100644
index 0000000..f26eac2
--- /dev/null
+++ b/res/drawable/ic_del.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  Copyright (C) 2018 The LineageOS 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.
+  -->
+<vector
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="24dp"
+    android:width="24dp"
+    android:viewportHeight="24"
+    android:viewportWidth="24">
+    <path
+        android:fillColor="@color/pad_button_text_color"
+        android:pathData="M19,15.59L17.59,17L14,13.41L10.41,17L9,15.59L12.59,12L9,8.41
+        L10.41,7L14,10.59L17.59,7L19,8.41L15.41,12L19,15.59M22,3A2,2 0 0,1 24,5V19A2,2 0 0,1 22,21
+        H7C6.31,21 5.77,20.64 5.41,20.11L0,12L5.41,3.88C5.77,3.35 6.31,3 7,3H22M22,5
+        H7L2.28,12L7,19H22V5Z" />
+</vector>
diff --git a/res/layout/fragment_history.xml b/res/layout/fragment_history.xml
index c3c5b62..0559c87 100644
--- a/res/layout/fragment_history.xml
+++ b/res/layout/fragment_history.xml
@@ -32,7 +32,7 @@
         android:navigationContentDescription="@string/desc_navigate_up"
         android:navigationIcon="?android:attr/homeAsUpIndicator"
         android:popupTheme="@android:style/ThemeOverlay.Material.Light"
-        android:theme="@android:style/ThemeOverlay.Material.Dark.ActionBar"
+        android:theme="@style/Theme.Toolbar"
         android:title="@string/title_history" />
 
     <androidx.recyclerview.widget.RecyclerView
diff --git a/res/layout/pad_operator_one_col.xml b/res/layout/pad_operator_one_col.xml
index 3484972..6279cc0 100644
--- a/res/layout/pad_operator_one_col.xml
+++ b/res/layout/pad_operator_one_col.xml
@@ -24,11 +24,11 @@
     app:rowCount="5"
     app:columnCount="1">
 
-    <Button
+    <ImageButton
         android:id="@+id/del"
-        style="@style/PadButtonStyle.Operator.Text"
+        style="@style/PadButtonStyle.Operator"
         android:contentDescription="@string/desc_del"
-        android:text="@string/del"
+        android:src="@drawable/ic_del"
         app:layout_row="0"
         app:layout_column="0" />
 
diff --git a/res/layout/pad_operator_two_col.xml b/res/layout/pad_operator_two_col.xml
index b819162..23eb857 100644
--- a/res/layout/pad_operator_two_col.xml
+++ b/res/layout/pad_operator_two_col.xml
@@ -32,11 +32,11 @@
         app:layout_row="0"
         app:layout_column="0" />
 
-    <Button
+    <ImageButton
         android:id="@+id/del"
-        style="@style/PadButtonStyle.Operator.Text"
+        style="@style/PadButtonStyle.Operator"
         android:contentDescription="@string/desc_del"
-        android:text="@string/del"
+        android:src="@drawable/ic_del"
         app:layout_row="0"
         app:layout_column="1" />
 
diff --git a/res/mipmap-anydpi/ic_launcher.xml b/res/mipmap-anydpi/ic_launcher.xml
new file mode 100644
index 0000000..d8649ba
--- /dev/null
+++ b/res/mipmap-anydpi/ic_launcher.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (c) 2018 The LineageOS 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.
+-->
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+    <background android:drawable="@mipmap/ic_background"/>
+    <foreground android:drawable="@mipmap/ic_foreground"/>
+</adaptive-icon>
+
diff --git a/res/mipmap-hdpi/ic_background.png b/res/mipmap-hdpi/ic_background.png
new file mode 100644
index 0000000..f2a4bd0
--- /dev/null
+++ b/res/mipmap-hdpi/ic_background.png
Binary files differ
diff --git a/res/mipmap-hdpi/ic_foreground.png b/res/mipmap-hdpi/ic_foreground.png
new file mode 100644
index 0000000..3771c49
--- /dev/null
+++ b/res/mipmap-hdpi/ic_foreground.png
Binary files differ
diff --git a/res/mipmap-hdpi/ic_launcher_calculator.png b/res/mipmap-hdpi/ic_launcher_calculator.png
deleted file mode 100644
index e50e87e..0000000
--- a/res/mipmap-hdpi/ic_launcher_calculator.png
+++ /dev/null
Binary files differ
diff --git a/res/mipmap-mdpi/ic_background.png b/res/mipmap-mdpi/ic_background.png
new file mode 100644
index 0000000..8e5bfbd
--- /dev/null
+++ b/res/mipmap-mdpi/ic_background.png
Binary files differ
diff --git a/res/mipmap-mdpi/ic_foreground.png b/res/mipmap-mdpi/ic_foreground.png
new file mode 100644
index 0000000..e750abd
--- /dev/null
+++ b/res/mipmap-mdpi/ic_foreground.png
Binary files differ
diff --git a/res/mipmap-mdpi/ic_launcher_calculator.png b/res/mipmap-mdpi/ic_launcher_calculator.png
deleted file mode 100644
index 2fcdc67..0000000
--- a/res/mipmap-mdpi/ic_launcher_calculator.png
+++ /dev/null
Binary files differ
diff --git a/res/mipmap-xhdpi/ic_background.png b/res/mipmap-xhdpi/ic_background.png
new file mode 100644
index 0000000..3de5562
--- /dev/null
+++ b/res/mipmap-xhdpi/ic_background.png
Binary files differ
diff --git a/res/mipmap-xhdpi/ic_foreground.png b/res/mipmap-xhdpi/ic_foreground.png
new file mode 100644
index 0000000..ed1009f
--- /dev/null
+++ b/res/mipmap-xhdpi/ic_foreground.png
Binary files differ
diff --git a/res/mipmap-xhdpi/ic_launcher_calculator.png b/res/mipmap-xhdpi/ic_launcher_calculator.png
deleted file mode 100644
index 67993fc..0000000
--- a/res/mipmap-xhdpi/ic_launcher_calculator.png
+++ /dev/null
Binary files differ
diff --git a/res/mipmap-xxhdpi/ic_background.png b/res/mipmap-xxhdpi/ic_background.png
new file mode 100644
index 0000000..c403d91
--- /dev/null
+++ b/res/mipmap-xxhdpi/ic_background.png
Binary files differ
diff --git a/res/mipmap-xxhdpi/ic_foreground.png b/res/mipmap-xxhdpi/ic_foreground.png
new file mode 100644
index 0000000..8908067
--- /dev/null
+++ b/res/mipmap-xxhdpi/ic_foreground.png
Binary files differ
diff --git a/res/mipmap-xxhdpi/ic_launcher_calculator.png b/res/mipmap-xxhdpi/ic_launcher_calculator.png
deleted file mode 100644
index 71387a9..0000000
--- a/res/mipmap-xxhdpi/ic_launcher_calculator.png
+++ /dev/null
Binary files differ
diff --git a/res/mipmap-xxxhdpi/ic_background.png b/res/mipmap-xxxhdpi/ic_background.png
new file mode 100644
index 0000000..f3c9e28
--- /dev/null
+++ b/res/mipmap-xxxhdpi/ic_background.png
Binary files differ
diff --git a/res/mipmap-xxxhdpi/ic_foreground.png b/res/mipmap-xxxhdpi/ic_foreground.png
new file mode 100644
index 0000000..a20c571
--- /dev/null
+++ b/res/mipmap-xxxhdpi/ic_foreground.png
Binary files differ
diff --git a/res/mipmap-xxxhdpi/ic_launcher_calculator.png b/res/mipmap-xxxhdpi/ic_launcher_calculator.png
deleted file mode 100644
index 9d61dc4..0000000
--- a/res/mipmap-xxxhdpi/ic_launcher_calculator.png
+++ /dev/null
Binary files differ
diff --git a/res/values-ast-rES/strings.xml b/res/values-ast-rES/strings.xml
new file mode 100644
index 0000000..a3e00ad
--- /dev/null
+++ b/res/values-ast-rES/strings.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--Generated by crowdin.com-->
+<!--
+  Copyright (C) 2015 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>
+    <string name="app_name">Calculadora</string>
+    <string name="dec_point">,</string>
+    <string name="mode_deg">º</string>
+    <string name="mode_rad">rad</string>
+    <string name="clr">clr</string>
+    <string name="cleared">llimpiaos</string>
+    <string name="del">del</string>
+    <string name="desc_const_e">númberu d\'Euler</string>
+    <string name="desc_const_pi">pi</string>
+    <string name="desc_dec_point">puntu</string>
+    <string name="desc_lparen">paréntesis d\'apertura</string>
+    <string name="desc_rparen">paréntesis de zarru</string>
+    <string name="desc_fun_cos">cosenu</string>
+    <string name="desc_fun_ln">logaritmu natural</string>
+    <string name="desc_fun_log">logaritmu</string>
+    <string name="desc_fun_sin">senu</string>
+    <string name="desc_fun_tan">tanxente</string>
+    <string name="desc_fun_arccos">cosenu inversu</string>
+    <string name="desc_fun_arcsin">senu inversu</string>
+    <string name="desc_fun_arctan">taxente inversa</string>
+    <string name="desc_fun_10pow">diez a la potencia de</string>
+    <string name="desc_fun_exp">función esponencial</string>
+    <string name="desc_op_sqr">al cuadráu</string>
+    <string name="desc_op_add">más</string>
+    <string name="desc_op_div">división</string>
+    <string name="desc_op_fact">factorial</string>
+    <string name="desc_op_mul">multiplicar</string>
+    <string name="desc_op_pct">porcentaxe</string>
+    <string name="desc_op_pow">potencia</string>
+    <string name="desc_op_sqrt">raíz cuadrada</string>
+    <string name="desc_op_sub">menos</string>
+    <string name="desc_mode_deg">mou de graos</string>
+    <string name="desc_mode_rad">mou de radianes</string>
+    <string name="desc_switch_deg">camudar a graos</string>
+    <string name="desc_switch_rad">camudar a radianes</string>
+    <string name="desc_eq">igual a</string>
+    <string name="desc_clr">llimpiar</string>
+    <string name="desc_del">suprimir</string>
+    <string name="desc_inv_off">amosar funciones inverses</string>
+    <string name="desc_inv_on">anubrir funciones inverses</string>
+    <string name="error_nan">Nun ye un númberu</string>
+    <string name="error_syntax">Espresión incorreuta</string>
+    <string name="error_aborted">Encaboxada</string>
+    <string name="error_overflow">¿Infinitu?</string>
+    <string name="error_zero_divide">Nun pue dividise por 0</string>
+    <string name="text_copied_toast">Copióse\'l testu</string>
+    <string name="cancelled">Encaboxóse\'l cálculu.</string>
+    <string name="timeout">Escosó\'l tiempu d\'espera. El valor pue ser infinitu o indefiníu.</string>
+    <string name="ok_remove_timeout">Usar tiempos d\'espera más llargos</string>
+    <string name="dismiss">Escartar</string>
+    <string name="exact">(exautu)</string>
+    <string name="approximate">(±1 nel postrer díxitu)</string>
+    <string name="menu_leading">Rempuesta con díxitos más significativos</string>
+    <string name="menu_fraction">Rempuesta como fraición</string>
+    <string name="menu_licenses">Llicencies de códigu abiertu</string>
+    <string name="menu_clear_history">Llimpiar</string>
+    <string name="desc_navigate_up">Desplazase p\'arriba</string>
+    <string name="dialog_timeout">Escosó\'l tiempu</string>
+    <string name="dialog_clear">¿Llimpiar la historia y la memoria?</string>
+</resources>
diff --git a/res/values-cy/strings.xml b/res/values-cy/strings.xml
new file mode 100644
index 0000000..6034426
--- /dev/null
+++ b/res/values-cy/strings.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--Generated by crowdin.com-->
+<!--
+  Copyright (C) 2015 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>
+    <string name="app_name">Cyfrifiannell</string>
+    <string name="dec_point">.</string>
+    <string name="mode_deg">deg</string>
+    <string name="mode_rad">rad</string>
+    <string name="clr">clr</string>
+    <string name="cleared">cliriwyd</string>
+    <string name="del">del</string>
+    <string name="desc_const_e">Rhif Euler</string>
+    <string name="desc_const_pi">pi</string>
+    <string name="desc_dec_point">pwynt</string>
+    <string name="desc_lparen">cromfach chwith</string>
+    <string name="desc_rparen">cromfach dde</string>
+    <string name="desc_fun_cos">cosine</string>
+    <string name="desc_fun_ln">logarithm naturiol</string>
+    <string name="desc_fun_log">logarithm</string>
+    <string name="desc_fun_sin">sine</string>
+    <string name="desc_fun_tan">tangiad</string>
+    <string name="desc_fun_arccos">cosine gwrthdro</string>
+    <string name="desc_fun_arcsin">sine gwrthdro</string>
+    <string name="desc_fun_arctan">tangent gwrthdro</string>
+    <string name="desc_fun_10pow">deg i\'r pŵer o</string>
+    <string name="desc_fun_exp">ffwythiant esbonyddol</string>
+    <string name="desc_op_sqr">wedi\'i sgwario</string>
+    <string name="desc_op_add">plws</string>
+    <string name="desc_op_div">rhannu</string>
+    <string name="desc_op_fact">ffactorol</string>
+    <string name="desc_op_mul">lluosi</string>
+    <string name="desc_op_pct">y cant</string>
+    <string name="desc_op_pow">pŵer</string>
+    <string name="desc_op_sqrt">ail isradd</string>
+    <string name="desc_op_sub">minws</string>
+    <string name="desc_mode_deg">modd graddau</string>
+    <string name="desc_mode_rad">modd radianau</string>
+    <string name="desc_switch_deg">newid i graddau</string>
+    <string name="desc_switch_rad">newid i radianau</string>
+    <string name="desc_eq">yn hafal i</string>
+    <string name="desc_clr">clirio</string>
+    <string name="desc_del">dileu</string>
+    <string name="desc_inv_off">dangos ffwythiannau gwrthdro</string>
+    <string name="desc_inv_on">cuddio ffwythiannau gwrthdro</string>
+    <string name="desc_formula">Dim fformiwla</string>
+    <string name="desc_result">Dim canlyniad</string>
+    <string name="desc_num_pad">Rhifau a gweithrediadau sylfaenol</string>
+    <string name="desc_adv_pad">Gweithrediadau uwch</string>
+    <string name="error_nan">Dim yn rhif</string>
+    <string name="error_syntax">Mynegiad gwael</string>
+    <string name="error_aborted">Ataliwyd</string>
+    <string name="error_overflow">Diderfyn?</string>
+    <string name="error_zero_divide">Meth ei rannu â 0</string>
+    <string name="text_copied_toast">Testun wedi\'i gopïo</string>
+    <string name="cancelled">Diddymwyd y cyfrifiannu</string>
+    <string name="timeout">Gall fod y gwerth yn ddiddiwedd neu heb ei ddiffinio.</string>
+    <string name="ok_remove_timeout">Caniatáu amser hirach</string>
+    <string name="dismiss">Diystyru</string>
+    <string name="exact">(union)</string>
+    <string name="approximate">(±1 yn digid olaf)</string>
+    <string name="menu_leading">Ateb gyda digidau arweiniol</string>
+    <string name="menu_fraction">Ateb fel ffracsiwn</string>
+    <string name="menu_licenses">Trwyddedau cod agored</string>
+    <string name="menu_history">Hanes</string>
+    <string name="menu_clear_history">Clirio</string>
+    <string name="title_history">Hanes</string>
+    <string name="desc_navigate_up">Llywio i fyny</string>
+    <string name="dialog_timeout">Terfyn amser</string>
+    <string name="dialog_clear">Clirio\'r hanes a\'r cof?</string>
+    <string name="title_current_expression">Mynediad cyfredol</string>
+    <string name="no_history">Dim hanes</string>
+</resources>
diff --git a/res/values-eo/strings.xml b/res/values-eo/strings.xml
new file mode 100644
index 0000000..e1da194
--- /dev/null
+++ b/res/values-eo/strings.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--Generated by crowdin.com-->
+<!--
+  Copyright (C) 2015 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>
+    <string name="app_name">Kalkulilo</string>
+    <string name="dec_point">,</string>
+    <string name="desc_fun_cos">kosinuso</string>
+    <string name="desc_fun_sin">sinuso</string>
+    <string name="desc_fun_arcsin">inversa sinuso</string>
+    <string name="desc_del">forigi</string>
+</resources>
diff --git a/res/values-night/lineage_colors.xml b/res/values-night/lineage_colors.xml
new file mode 100644
index 0000000..bfda51b
--- /dev/null
+++ b/res/values-night/lineage_colors.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  Copyright (C) 2018 The LineageOS 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>
+    <!-- Primary color (Color for the toolbars). -->
+    <color name="calculator_primary_color">#212121</color>
+
+    <!-- Status bar color. -->
+    <color name="calculator_statusbar_color">#000000</color>
+
+    <!-- Background color for the operator pad. -->
+    <color name="pad_operator_background_color">#1E1E1E</color>
+
+    <!-- Text color for the formula in the calculator display. -->
+    <color name="display_formula_text_color">@android:color/white</color>
+
+    <!-- Text color for the result in the calculator display. -->
+    <color name="display_result_text_color">#6CFFFFFF</color>
+
+    <!-- Lighter color for exponent while scrolling. -->
+    <color name="display_result_exponent_text_color">#40FFFFFF</color>
+
+    <!-- Text color for a button in a pad. -->
+    <color name="pad_button_text_color">@android:color/white</color>
+
+    <!-- Ripple color when a button is pressed in a pad. -->
+    <color name="pad_button_ripple_color">#33FFFFFF</color>
+</resources>
diff --git a/res/values-night/lineage_styles.xml b/res/values-night/lineage_styles.xml
new file mode 100644
index 0000000..9d9eb6b
--- /dev/null
+++ b/res/values-night/lineage_styles.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  Copyright (C) 2018 The LineageOS 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="Theme" parent="@android:style/Theme.Material">
+        <item name="android:colorPrimary">@color/calculator_primary_color</item>
+        <item name="android:colorAccent">@color/calculator_accent_color</item>
+        <item name="android:statusBarColor">@color/calculator_statusbar_color</item>
+        <item name="android:windowSoftInputMode">stateAlwaysHidden</item>
+    </style>
+
+    <style name="Theme.Toolbar" parent="@android:style/ThemeOverlay.Material.Dark.ActionBar" />
+</resources>
diff --git a/res/values/color.xml b/res/values/color.xml
index 2f6475f..41a58b2 100644
--- a/res/values/color.xml
+++ b/res/values/color.xml
@@ -18,19 +18,19 @@
 <resources>
 
     <!-- Default accent color. -->
-    <color name="calculator_accent_color">#0097A7</color>
+    <color name="calculator_accent_color">#167c80</color>
 
     <!-- Primary color (Color for the toolbars). -->
-    <color name="calculator_primary_color">#00BCD4</color>
+    <color name="calculator_primary_color">#fafafa</color>
 
     <!-- Status bar color. -->
-    <color name="calculator_statusbar_color">#0096A9</color>
+    <color name="calculator_statusbar_color">#f0f0f0</color>
 
     <!-- Color to indicate an error has occured. -->
-    <color name="calculator_error_color">#C2185B</color>
+    <color name="calculator_error_color">#d0422d</color>
 
     <!-- Background color of the calculator display. -->
-    <color name="display_background_color">#FFF</color>
+    <color name="display_background_color">@color/calculator_primary_color</color>
 
     <!-- Text color for the formula in the calculator display. -->
     <color name="display_formula_text_color">#000000</color>
@@ -42,27 +42,27 @@
     <color name="display_result_exponent_text_color">#40000000</color>
 
     <!-- Background color for the numeric pad. -->
-    <color name="pad_numeric_background_color">#434343</color>
+    <color name="pad_numeric_background_color">@color/calculator_primary_color</color>
 
     <!-- Background color for the operator pad. -->
-    <color name="pad_operator_background_color">#636363</color>
+    <color name="pad_operator_background_color">@color/calculator_statusbar_color</color>
 
     <!-- Background color for the advanced pad. -->
-    <color name="pad_advanced_background_color">#1DE9B6</color>
+    <color name="pad_advanced_background_color">@color/calculator_accent_color</color>
 
     <!-- Text color for a button in a pad. -->
-    <color name="pad_button_text_color">#FFF</color>
+    <color name="pad_button_text_color">#333</color>
 
     <!-- Text color for a button in the advanced pad. -->
-    <color name="pad_button_advanced_text_color">#99000000</color>
+    <color name="pad_button_advanced_text_color">@android:color/white</color>
 
     <!-- Ripple color when a button is pressed in a pad. -->
-    <color name="pad_button_ripple_color">#33FFFFFF</color>
+    <color name="pad_button_ripple_color">#33000000</color>
 
     <!-- Ripple color when a button is pressed in a pad. -->
     <color name="pad_button_advanced_ripple_color">#1A000000</color>
 
     <!-- Background color for empty history view. -->
-    <color name="empty_history_color">#EEEEEE</color>
+    <color name="empty_history_color">@color/calculator_primary_color</color>
 
 </resources>
diff --git a/res/values/lineage_colors.xml b/res/values/lineage_colors.xml
new file mode 100644
index 0000000..0deed33
--- /dev/null
+++ b/res/values/lineage_colors.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  Copyright (C) 2018 The LineageOS 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="navigationBar_color">@android:color/white</color>
+    <color name="navigationBar_divider">#1f000000</color>
+</resources>
diff --git a/res/values/lineage_styles.xml b/res/values/lineage_styles.xml
new file mode 100644
index 0000000..1054f93
--- /dev/null
+++ b/res/values/lineage_styles.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  Copyright (C) 2018 The LineageOS 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="Theme.Toolbar" parent="@android:style/ThemeOverlay.Material.ActionBar" />
+</resources>
diff --git a/res/values/themes.xml b/res/values/themes.xml
index 36adfbe..2104fe3 100644
--- a/res/values/themes.xml
+++ b/res/values/themes.xml
@@ -17,11 +17,15 @@
 
 <resources>
 
-    <style name="Theme" parent="@android:style/Theme.Material.Light.DarkActionBar">
+    <style name="Theme" parent="@android:style/Theme.Material.Light">
         <item name="android:colorPrimary">@color/calculator_primary_color</item>
         <item name="android:colorAccent">@color/calculator_accent_color</item>
-        <item name="android:statusBarColor">@color/calculator_accent_color</item>
+        <item name="android:statusBarColor">@color/calculator_statusbar_color</item>
         <item name="android:windowSoftInputMode">stateAlwaysHidden</item>
+        <item name="android:navigationBarColor">@color/navigationBar_color</item>
+        <item name="android:navigationBarDividerColor">@color/navigationBar_divider</item>
+        <item name="android:windowLightStatusBar">true</item>
+        <item name="android:windowLightNavigationBar">true</item>
     </style>
 
     <style name="Theme.Calculator">
