feat: Steel + Brutalist themes; tighten all theme base sizes to 13px

This commit is contained in:
James 2026-03-12 02:19:27 -04:00
parent 14b35c95da
commit bb33323957
6 changed files with 53 additions and 2 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -9,6 +9,7 @@
/* ===== THEMES ===== */
:root,
html[data-theme="midnight"] {
font-size: 13px;
--ds-bg: #0a1628;
--ds-sf: #0d1f3c;
--ds-tx: #fff;
@ -24,6 +25,7 @@ html[data-theme="midnight"] {
}
html[data-theme="light"] {
font-size: 13px;
--ds-bg: #f0f2f5;
--ds-sf: #fff;
--ds-tx: #1a202c;
@ -39,6 +41,7 @@ html[data-theme="light"] {
}
html[data-theme="slate"] {
font-size: 13px;
--ds-bg: #1e293b;
--ds-sf: #334155;
--ds-tx: #f1f5f9;
@ -89,6 +92,52 @@ html[data-theme="executive"] {
body { background: var(--ds-bg) !important; }
h1, h2, h3 { font-family: var(--ds-hf) !important; }
html[data-theme="executive"] * { font-family: 'Georgia', 'Times New Roman', serif !important; }
/* ===== STEEL THEME ===== */
html[data-theme="steel"] {
font-size: 13px;
--ds-bg: #0c0c0e;
--ds-sf: #141418;
--ds-tx: #f0f0f2;
--ds-tx2: #7a8494;
--ds-tx3: #4a5260;
--ds-ac: #3b82f6;
--ds-ac2: #2563eb;
--ds-act: #fff;
--ds-bd: rgba(255,255,255,.07);
--ds-hv: rgba(59,130,246,.06);
--ds-inp: #0c0c0e;
--ds-hf: 'DM Sans', sans-serif;
}
html[data-theme="steel"] * { font-family: 'DM Sans', sans-serif !important; }
html[data-theme="steel"] [class*="text-[#c9a84c]"],
html[data-theme="steel"] [class*="bg-[#c9a84c]"] { color: #3b82f6 !important; }
html[data-theme="steel"] [class*="bg-[#c9a84c]"] { background: #3b82f6 !important; }
html[data-theme="steel"] .sidebar-link.active { background: rgba(59,130,246,.12) !important; color: #3b82f6 !important; }
html[data-theme="steel"] #ds-theme-bar button.active { background: #3b82f6 !important; color: #fff !important; }
/* ===== BRUTALIST THEME ===== */
html[data-theme="brutalist"] {
font-size: 13px;
--ds-bg: #111111;
--ds-sf: #1c1c1c;
--ds-tx: #ffffff;
--ds-tx2: #999999;
--ds-tx3: #666666;
--ds-ac: #ff6600;
--ds-ac2: #e05500;
--ds-act: #fff;
--ds-bd: rgba(255,255,255,.09);
--ds-hv: rgba(255,102,0,.06);
--ds-inp: #111111;
--ds-hf: 'Space Mono', monospace;
}
html[data-theme="brutalist"] * { font-family: 'Space Mono', monospace !important; }
html[data-theme="brutalist"] [class*="text-[#c9a84c]"] { color: #ff6600 !important; }
html[data-theme="brutalist"] [class*="bg-[#c9a84c]"] { background: #ff6600 !important; }
html[data-theme="brutalist"] [class*="border-\[#c9a84c\]"] { border-color: #ff6600 !important; }
html[data-theme="brutalist"] .sidebar-link.active { background: rgba(255,102,0,.1) !important; color: #ff6600 !important; }
html[data-theme="brutalist"] #ds-theme-bar button.active { background: #ff6600 !important; color: #fff !important; }
header { background: var(--ds-sf) !important; border-color: var(--ds-bd) !important; }
nav { background: var(--ds-sf) !important; border-color: var(--ds-bd) !important; }
.text-white { color: var(--ds-tx) !important; }

View File

@ -74,7 +74,7 @@
<script>
// Parse ?next= redirect URL
const params = new URLSearchParams(window.location.search);
const nextURL = params.get('next') || '/app/tasks';
const nextURL = params.get('next') || '/app/projects';
// If already logged in, redirect
if (localStorage.getItem('ds_token')) {

View File

@ -6,7 +6,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{.Title}}</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap" rel="stylesheet">
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet" href="/static/app.css">
<script>document.documentElement.setAttribute("data-theme",localStorage.getItem("ds_theme")||"midnight")</script>
@ -55,6 +55,8 @@
<!-- Theme bar -->
<div id="ds-theme-bar">
<button data-t="steel" onclick="setTheme('steel')">Steel</button>
<button data-t="brutalist" onclick="setTheme('brutalist')">Brutalist</button>
<button data-t="midnight" onclick="setTheme('midnight')">Midnight</button>
<button data-t="light" onclick="setTheme('light')">Light</button>
<button data-t="slate" onclick="setTheme('slate')">Slate</button>