diff --git a/Marechai.App/Presentation/Components/KeyButton.cs b/Marechai.App/Presentation/Components/KeyButton.cs
new file mode 100644
index 00000000..c8a315b0
--- /dev/null
+++ b/Marechai.App/Presentation/Components/KeyButton.cs
@@ -0,0 +1,18 @@
+using Microsoft.UI.Xaml.Controls;
+
+namespace Marechai.App.Presentation.Components;
+
+///
+/// A keycap-styled button used by the letter/year browse grids. Its default
+/// style (see SharedStyles.xaml) draws the beveled keycap entirely with
+/// straight-line Path geometry instead of Border+CornerRadius, since every
+/// CornerRadius-based attempt hit a corner-clipping rendering bug on this
+/// Uno.Sdk build.
+///
+public sealed partial class KeyButton : Button
+{
+ public KeyButton()
+ {
+ DefaultStyleKey = typeof(KeyButton);
+ }
+}
diff --git a/Marechai.App/Styles/SharedStyles.xaml b/Marechai.App/Styles/SharedStyles.xaml
index 844c6d8b..a15ab6ca 100644
--- a/Marechai.App/Styles/SharedStyles.xaml
+++ b/Marechai.App/Styles/SharedStyles.xaml
@@ -1,6 +1,7 @@
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:components="using:Marechai.App.Presentation.Components">
@@ -179,12 +180,15 @@
-