diff --git a/css/style.css b/css/style.css
index a8d652e..1b9006a 100644
--- a/css/style.css
+++ b/css/style.css
@@ -50,12 +50,19 @@ summary:focus-visible {
.site-header nav { display: flex; gap: 18px; align-items: center; }
.site-header nav a { color: var(--dim); text-decoration: none; }
.theme-btn {
- width: 26px; height: 26px; border: none; padding: 0; cursor: pointer;
+ position: relative; width: 30px; height: 30px; border: none; padding: 0; cursor: pointer;
/* Apollo dog mascot, painted full-colour (not tinted) like the wiki annotation marker. */
background: url("../assets/brand/apollo-dog.png") center / contain no-repeat;
visibility: hidden; /* revealed by theme.js once wired up */
}
-.theme-btn:hover { opacity: .75; }
+.theme-btn:hover { opacity: .8; }
+/* Sun/moon/auto badge so the dog reads as the theme control. */
+.theme-mode {
+ position: absolute; right: -4px; bottom: -3px;
+ width: 15px; height: 15px; border-radius: 50%;
+ background: #fff; box-shadow: 0 0 0 1px rgba(0, 0, 0, .15);
+ font-size: 9px; line-height: 15px; text-align: center;
+}
/* On the dark header the dog's dark outline vanishes; give it the same white
backing it already has on the (white) light-mode header so it stays legible. */
[data-theme="dark"] .theme-btn { background-color: #fff; border-radius: 6px; }
@@ -65,7 +72,7 @@ main { max-width: 1080px; margin: 0 auto; padding: 32px 24px 64px; }
/* Hub */
.hero h1 { font-size: 1.9rem; margin: 0 0 6px; letter-spacing: -.01em; }
-.hero p { color: var(--dim); margin: 0 0 18px; max-width: 60ch; }
+.hero p { color: var(--dim); margin: 0 0 18px; }
.filters { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 20px; }
.filters button {
border: 1px solid var(--line); background: var(--panel); color: var(--dim);
diff --git a/index.html b/index.html
index 42bfe40..a92f8e8 100644
--- a/index.html
+++ b/index.html
@@ -29,7 +29,7 @@
Shop
Discord
Forum
-
+
Loading devices…
diff --git a/js/theme.js b/js/theme.js
index 8260130..267c5cb 100644
--- a/js/theme.js
+++ b/js/theme.js
@@ -1,5 +1,6 @@
// js/theme.js — theme toggle: System / Dark / Light (cycles on click)
const THEMES = ['system', 'dark', 'light'];
+const ICONS = { system: '🌓', dark: '🌙', light: '☀️' };
const LABELS = { system: 'System theme', dark: 'Dark theme', light: 'Light theme' };
const NEXT_LABEL = {
system: 'Switch to dark theme',
@@ -32,9 +33,11 @@ export function initThemeToggle() {
if (!btn) return;
const mq = matchMedia('(prefers-color-scheme: dark)');
+ const badge = btn.querySelector('.theme-mode');
function updateBtn(pref) {
- // The icon is the Apollo dog (a CSS background); only the labels track state.
+ // The dog is the CSS background; the small badge shows the current mode.
+ if (badge) badge.textContent = ICONS[pref];
btn.setAttribute('aria-label', LABELS[pref]);
btn.title = NEXT_LABEL[pref];
}