3 Commits
Author SHA1 Message Date
valknarandClaude Sonnet 5 d96a28f6cc Bump to 0.9.6
CI / Static checks (push) Successful in 1m9s
CI / Build and push image (push) Successful in 1m3s
- Themed scrollbar: thumb/track colors follow --border/--muted-foreground
  so the scrollbar matches light/dark instead of the OS default

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BuWtppPBizG2NQRa31FCRa
2026-09-05 19:45:17 +02:00
valknarandClaude Sonnet 5 5a6da7e507 Bump to 0.9.5
CI / Build and push image (push) Successful in 1m9s
CI / Static checks (push) Successful in 1m41s
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BuWtppPBizG2NQRa31FCRa
2026-09-05 11:30:31 +02:00
valknarandClaude Sonnet 5 b58640beb2 Unify card title size to text-sm
Several CardTitle usages were text-base while others were already
text-sm, giving section headers inconsistent sizes across pages.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BuWtppPBizG2NQRa31FCRa
2026-09-05 11:29:41 +02:00
7 changed files with 31 additions and 8 deletions
+1 -1
View File
@@ -24,7 +24,7 @@ export default async function DevicesPage({
</div>
<Card className="bp-glass">
<CardHeader>
<CardTitle className="text-base">Known devices</CardTitle>
<CardTitle className="text-sm">Known devices</CardTitle>
</CardHeader>
<CardContent className="flex flex-col gap-3">
<DevicesTable devices={devices} />
+1 -1
View File
@@ -56,7 +56,7 @@ export default async function DashboardPage() {
<Card className="bp-glass">
<CardHeader>
<CardTitle className="text-base">Recent sessions</CardTitle>
<CardTitle className="text-sm">Recent sessions</CardTitle>
</CardHeader>
<CardContent className="flex flex-col gap-3">
<SessionsTable sessions={recentSessions} />
+2 -2
View File
@@ -72,7 +72,7 @@ export default async function SessionDetailPage({ params }: { params: Promise<{
<Card className="bp-glass">
<CardHeader>
<CardTitle className="text-base">Intensity timeline</CardTitle>
<CardTitle className="text-sm">Intensity timeline</CardTitle>
</CardHeader>
<CardContent>
<SessionTimelineChart timeline={timeline} />
@@ -81,7 +81,7 @@ export default async function SessionDetailPage({ params }: { params: Promise<{
<Card className="bp-glass">
<CardHeader>
<CardTitle className="text-base">Devices</CardTitle>
<CardTitle className="text-sm">Devices</CardTitle>
</CardHeader>
<CardContent className="flex flex-col gap-1">
{detail.devices.map((d) => (
+1 -1
View File
@@ -24,7 +24,7 @@ export default async function SessionsPage({
</div>
<Card className="bp-glass">
<CardHeader>
<CardTitle className="text-base">History</CardTitle>
<CardTitle className="text-sm">History</CardTitle>
</CardHeader>
<CardContent className="flex flex-col gap-3">
<SessionsTable sessions={sessions} />
+23
View File
@@ -134,6 +134,29 @@
}
}
/* Themed scrollbar - follows --border/--muted-foreground so it swaps with
light/dark like everything else, instead of the OS-default bar. */
* {
scrollbar-width: thin;
scrollbar-color: var(--muted-foreground) transparent;
}
*::-webkit-scrollbar {
width: 10px;
height: 10px;
}
*::-webkit-scrollbar-track {
background: transparent;
}
*::-webkit-scrollbar-thumb {
background-color: var(--border);
border-radius: 999px;
border: 2px solid transparent;
background-clip: padding-box;
}
*::-webkit-scrollbar-thumb:hover {
background-color: var(--muted-foreground);
}
/* Animated signature-sweep background - sits behind everything; cards use
.bp-glass (translucent + blurred) so it shines through instead of being
fully hidden behind an opaque card surface. */
+2 -2
View File
@@ -16,7 +16,7 @@ export function DeviceUsageTable({ devices }: { devices: DeviceUsageRow[] }) {
return (
<Card className="bp-glass">
<CardHeader>
<CardTitle className="text-base">Device usage</CardTitle>
<CardTitle className="text-sm">Device usage</CardTitle>
</CardHeader>
<CardContent className="text-sm text-muted-foreground">No device activity yet.</CardContent>
</Card>
@@ -26,7 +26,7 @@ export function DeviceUsageTable({ devices }: { devices: DeviceUsageRow[] }) {
return (
<Card className="bp-glass">
<CardHeader>
<CardTitle className="text-base">Device usage</CardTitle>
<CardTitle className="text-sm">Device usage</CardTitle>
</CardHeader>
<CardContent>
<Table>
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "sexy",
"version": "0.9.4",
"version": "0.9.6",
"private": true,
"scripts": {
"dev": "next dev",