UI/UX redesign: unified refined-glass design system
- Add shared UI primitives: Button, Field/Input/Select, PageHeader, Section, Callout, Tabs, Disclosure - Replace gradient buttons with single blue-accent btn-primary - Reserve gradient text for the brand wordmark only - Rework Scanner page onto the glass system; collapse explainer and glossary into a disclosure, move filters into a glass toolbar - Restructure Ticker Detail into tabs (Analysis / Indicators / S/R) with chart and recommendation always visible - Align Watchlist, Rankings, Admin, Login/Register to shared primitives - Unify stray indigo/violet/gray accents into the blue family Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -7,6 +7,8 @@ import { SettingsForm } from '../components/admin/SettingsForm';
|
||||
import { TickerManagement } from '../components/admin/TickerManagement';
|
||||
import { TickerUniverseBootstrap } from '../components/admin/TickerUniverseBootstrap';
|
||||
import { UserTable } from '../components/admin/UserTable';
|
||||
import { PageHeader } from '../components/ui/PageHeader';
|
||||
import { Tabs } from '../components/ui/Tabs';
|
||||
|
||||
const tabs = ['Users', 'Tickers', 'Settings', 'Jobs', 'Cleanup'] as const;
|
||||
type Tab = (typeof tabs)[number];
|
||||
@@ -16,27 +18,9 @@ export default function AdminPage() {
|
||||
|
||||
return (
|
||||
<div className="space-y-6 animate-slide-up">
|
||||
<div>
|
||||
<h1 className="text-2xl font-bold text-gradient">Admin</h1>
|
||||
<p className="text-xs text-gray-500 mt-1">System management</p>
|
||||
</div>
|
||||
<PageHeader title="Admin" subtitle="System management" />
|
||||
|
||||
{/* Tab bar */}
|
||||
<div className="flex gap-1 glass-sm p-1 w-fit">
|
||||
{tabs.map((tab) => (
|
||||
<button
|
||||
key={tab}
|
||||
onClick={() => setActiveTab(tab)}
|
||||
className={`px-4 py-2 text-sm font-medium rounded-lg transition-all duration-200 ${
|
||||
activeTab === tab
|
||||
? 'bg-white/[0.1] text-white shadow-lg shadow-blue-500/10'
|
||||
: 'text-gray-400 hover:text-gray-200 hover:bg-white/[0.04]'
|
||||
}`}
|
||||
>
|
||||
{tab}
|
||||
</button>
|
||||
))}
|
||||
</div>
|
||||
<Tabs tabs={tabs} active={activeTab} onChange={setActiveTab} />
|
||||
|
||||
{/* Tab content */}
|
||||
<div className="animate-fade-in">
|
||||
|
||||
Reference in New Issue
Block a user