Refractor. Update styling
CI / backend (push) Successful in 10m14s
CI / frontend (push) Successful in 1m55s

This commit is contained in:
2026-08-11 06:48:07 +08:00
parent e3f3a3ced8
commit 87e551c0d7
57 changed files with 450 additions and 393 deletions
+77 -1
View File
@@ -1,6 +1,79 @@
@import "tailwindcss";
/* 8px spacing rhythm — use Tailwind scale steps 2, 4, 6, 8, 12, 16 (8, 16, 24, 32, 48, 64 px) */
@custom-variant dark (&:where(.dark, .dark *));
/* Clinical surface tokens — swap under .dark */
:root {
--surface: #f1f5f9;
--surface-raised: #ffffff;
--surface-muted: #e2e8f0;
--border-default: #cbd5e1;
--text-primary: #0f172a;
--text-secondary: #475569;
--text-muted: #64748b;
--brand-muted-fill: #ccfbf1;
--brand-muted-text: #0f766e;
}
.dark {
--surface: #0f172a;
--surface-raised: #1e293b;
--surface-muted: #334155;
--border-default: #334155;
--text-primary: #f1f5f9;
--text-secondary: #cbd5e1;
--text-muted: #94a3b8;
--brand-muted-fill: rgba(15, 118, 110, 0.25);
--brand-muted-text: #5eead4;
}
@theme {
--font-sans: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
"Segoe UI Emoji", "Segoe UI Symbol";
/* Brand accent (teal) */
--color-brand: #0f766e;
--color-brand-hover: #0d9488;
--color-brand-muted: #ccfbf1;
--color-brand-foreground: #ffffff;
--color-brand-soft: var(--brand-muted-fill);
--color-brand-soft-text: var(--brand-muted-text);
/* Surfaces */
--color-surface: var(--surface);
--color-surface-raised: var(--surface-raised);
--color-surface-muted: var(--surface-muted);
--color-border: var(--border-default);
/* Semantic text helpers */
--color-ink: var(--text-primary);
--color-ink-secondary: var(--text-secondary);
--color-ink-muted: var(--text-muted);
/* Severity (clinical meaning preserved) */
--color-severity-critical: #dc2626;
--color-severity-critical-light: #fef2f2;
--color-severity-critical-dark: #991b1b;
--color-severity-warning: #d97706;
--color-severity-warning-light: #fffbeb;
--color-severity-warning-dark: #92400e;
--color-severity-info: #0369a1;
--color-severity-info-light: #e0f2fe;
--color-severity-info-dark: #075985;
/* Status */
--color-status-open: #ef4444;
--color-status-acknowledged: #d97706;
--color-status-resolved: #16a34a;
--color-status-escalated: #b45309;
/* Risk */
--color-risk-low: #16a34a;
--color-risk-medium: #d97706;
--color-risk-high: #ef4444;
}
/* 8px spacing rhythm — use Tailwind scale steps 2, 4, 6, 8, 12, 16 */
@layer base {
html {
-webkit-font-smoothing: antialiased;
@@ -10,6 +83,9 @@
body {
margin: 0;
min-height: 100svh;
font-family: var(--font-sans);
background-color: var(--surface);
color: var(--text-primary);
}
#app {