19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration
Umbenennung presseportale → pressekonto in Domains, Themes und Dokumentation. Design-Tokens, Portal-Shell, Customer-Dashboard, Auth- und Admin-PM-Views. Artisan-Befehl migrate:legacy-media mit Tests und Hub-Flux-Entwicklungsdocs. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
092ee0e918
commit
0a3e52d603
112 changed files with 8464 additions and 1649 deletions
248
resources/css/shared/design-tokens.css
Normal file
248
resources/css/shared/design-tokens.css
Normal file
|
|
@ -0,0 +1,248 @@
|
|||
/**
|
||||
* Hub × FluxUI — Gemeinsame Design-Tokens (Single Source of Truth)
|
||||
*
|
||||
* Diese Datei ist die EINZIGE Quelle für Hub-Farben, Fonts, Radii und
|
||||
* Schatten. Sowohl der Web-Build (Hub-Landing, Hub-Auth) als auch der
|
||||
* Portal-Build (User-Panel, Admin-Bereich) importieren diese Datei.
|
||||
*
|
||||
* Konventionen:
|
||||
* - Token-Names sind STABIL. Werte können sich ändern (z.B. Dark Mode),
|
||||
* Namen nicht.
|
||||
* - Light Mode ist Default. Dark Mode kommt in Phase 5.
|
||||
* - FluxUI-Akzent-Variablen (--color-accent, --color-accent-*) werden
|
||||
* in portal.css mit unseren Hub-Werten gebridged, nicht hier.
|
||||
*
|
||||
* Dokumentation: dev/frontend/hub-flux/README.md
|
||||
* dev/frontend/hub-flux/01-PHASE-0-TOKENS.md
|
||||
*/
|
||||
|
||||
@theme {
|
||||
/* =========================================================
|
||||
* SURFACES — warmes Buchpapier, gemeinsame Familie
|
||||
* ========================================================= */
|
||||
--color-bg: #f6f4ef;
|
||||
--color-bg-elev: #fbfaf6;
|
||||
--color-bg-rule: #e2ddd0;
|
||||
--color-bg-rule-2: #ede7d7; /* leicht hellere Variante für Progress-Tracks */
|
||||
--color-bg-rule-strong: #1a1f1c;
|
||||
--color-bg-dark: #15201a;
|
||||
--color-bg-card: #ffffff;
|
||||
--color-bg-card-warm: #efeadc;
|
||||
--color-bg-card-warm-border: #d6cfbb;
|
||||
--color-bg-card-warm-hover: #e6deca;
|
||||
--color-bg-card-warm-rule: #c8bda3;
|
||||
|
||||
/* =========================================================
|
||||
* HUB-BLAU — primärer Akzent, plattform-neutral
|
||||
* Klarer Kontrast zum hellen Buchpapier-Hintergrund.
|
||||
* ========================================================= */
|
||||
--color-hub: #1a2540;
|
||||
--color-hub-2: #243152;
|
||||
--color-hub-3: #2e3d66;
|
||||
--color-hub-soft: #e5e9f1;
|
||||
--color-hub-soft-2: #cfd6e4;
|
||||
--color-hub-line: #7b8fbf;
|
||||
|
||||
/* Topbar-Aliase für Hub-Gradient */
|
||||
--color-topbar: #1a2540;
|
||||
--color-topbar2: #243152;
|
||||
--color-topbar-deep: #0f1729;
|
||||
|
||||
/* =========================================================
|
||||
* AKZENT — gedecktes Bernstein (sekundärer Akzent)
|
||||
* Bewusst NICHT Orange (BP24) und NICHT Grün (Presseecho).
|
||||
* Im Portal für: Notifications, Datenqualität, Empfehlungs-Ribbons.
|
||||
*
|
||||
* Wichtige Trennung (Phase 5 / Dark Mode):
|
||||
* --color-accent — heller Akzent (Light: Bernstein, Dark: heller Bernstein).
|
||||
* In portal.css wird das auf var(--color-hub) umgebogen,
|
||||
* weil FluxUI-Primary-Buttons das nutzen.
|
||||
* --color-accent-warm — KONSTANTER Bernstein (gleicher Wert in beiden Modi).
|
||||
* Für Hint-Card-Border, Schritt-Karten-Eyebrows
|
||||
* und alle Stellen, die explizit Bernstein sein müssen.
|
||||
* --color-accent-deep — gedämpfter Bernstein für Action-Links.
|
||||
* ========================================================= */
|
||||
--color-accent: #b07a3a;
|
||||
--color-accent-deep: #8a5e27;
|
||||
--color-accent-soft: #f1e6d3;
|
||||
--color-accent-warm: #b07a3a;
|
||||
|
||||
/* =========================================================
|
||||
* PANEL-DARK — KONSTANTES dunkles Hub-Blau (in beiden Modi).
|
||||
* Wird von `.panel-dark` und der Brand-Bridge genutzt; soll im
|
||||
* Dark Mode NICHT hell werden, sondern immer dunkel bleiben.
|
||||
* Im Hub-Frontend (Light-Only) zeigt's die gleiche Atmosphäre.
|
||||
* ========================================================= */
|
||||
--color-panel-dark: #0f1729;
|
||||
--color-panel-dark-2: #1a2540;
|
||||
|
||||
/* =========================================================
|
||||
* INK — Anthrazit-Reihe für Text & Linien
|
||||
* ========================================================= */
|
||||
--color-ink: #1a1f1c;
|
||||
--color-ink-2: #3a413d;
|
||||
--color-ink-3: #5a6360;
|
||||
--color-ink-4: #8a918d;
|
||||
--color-ink-on-dark: #f6f4ef;
|
||||
--color-ink-on-dark-2: #b2b9c7;
|
||||
--color-ink-on-dark-3: #7b8fbf;
|
||||
--color-ink-on-dark-muted: #7b8fbf;
|
||||
--color-ink-on-dark-rule: #2a3550;
|
||||
|
||||
/* =========================================================
|
||||
* BRAND-ALIASE für Komponenten, die brand-Tokens nutzen
|
||||
* ========================================================= */
|
||||
--color-brand: #1a2540;
|
||||
--color-brand-deep: #0f1729;
|
||||
--color-brand-soft: #e5e9f1;
|
||||
|
||||
/* =========================================================
|
||||
* STATUS — Erfolg, Warnung, Fehler, Live
|
||||
* Identische Namen wie das User-Dashboard-Mockup verwendet.
|
||||
* ========================================================= */
|
||||
--color-ok: #2e8540;
|
||||
--color-ok-soft: #e2f1e5;
|
||||
--color-warn: #a87a1f;
|
||||
--color-warn-soft: #f6eac8;
|
||||
--color-err: #a8331f;
|
||||
--color-err-soft: #f4dad2;
|
||||
--color-live: #c84a1e;
|
||||
--color-gain: #2e8540;
|
||||
--color-gain-deep: #1f5e2e;
|
||||
--color-loss: #c8341e;
|
||||
|
||||
/* =========================================================
|
||||
* EDITORIAL — für Card-Warm-Sektionen
|
||||
* ========================================================= */
|
||||
--color-card-warm-cat: #5a6360;
|
||||
--color-card-warm-title: #2a302d;
|
||||
--color-feature-line: #c0c8db;
|
||||
--color-feature-dot: #d8dde9;
|
||||
|
||||
/* =========================================================
|
||||
* BRIDGE-DOTS — kleine farbige Punkte für presseecho /
|
||||
* businessportal24 in Brücken-Anzeigen (Sidebar, Topbar,
|
||||
* Bridge-Cards). Werte aus dem User-Dashboard-Mockup.
|
||||
* ========================================================= */
|
||||
--color-bridge-presseecho: #1f4d3a;
|
||||
--color-bridge-businessportal: #c84a1e;
|
||||
|
||||
/* =========================================================
|
||||
* FONTS — Hub: Inter Tight + JetBrains Mono.
|
||||
* Source Serif 4 wird im Hub für die Markennennungen der
|
||||
* Tochter-Portale (presseecho, businessportal24) verwendet;
|
||||
* im Portal nur für Brand-Mark, falls überhaupt.
|
||||
* ========================================================= */
|
||||
--font-sans:
|
||||
"Inter Tight", Inter, system-ui, -apple-system, BlinkMacSystemFont,
|
||||
"Segoe UI", sans-serif;
|
||||
--font-serif:
|
||||
"Source Serif 4", "Source Serif Pro", Charter, "Iowan Old Style",
|
||||
Georgia, serif;
|
||||
--font-mono:
|
||||
"JetBrains Mono", "SF Mono", ui-monospace, SFMono-Regular, Menlo,
|
||||
Consolas, monospace;
|
||||
|
||||
/* =========================================================
|
||||
* LAYOUT
|
||||
* ========================================================= */
|
||||
--container-layout: 1280px;
|
||||
|
||||
/* =========================================================
|
||||
* RADII — kleines Set, am Mockup orientiert
|
||||
* ========================================================= */
|
||||
--radius-xs: 3px;
|
||||
--radius-sm: 4px;
|
||||
--radius-md: 6px;
|
||||
--radius-lg: 8px;
|
||||
|
||||
/* =========================================================
|
||||
* SCHATTEN — weich, warm-getönt
|
||||
* ========================================================= */
|
||||
--shadow-soft: 0 1px 0 rgba(26, 31, 28, 0.03);
|
||||
--shadow-card: 0 1px 2px 0 rgb(26 37 64 / 0.06);
|
||||
--shadow-card-hover: 0 4px 12px -2px rgb(26 37 64 / 0.12);
|
||||
--shadow-auth:
|
||||
0 1px 0 rgba(26, 31, 28, 0.03),
|
||||
0 20px 50px -32px rgba(26, 37, 64, 0.28);
|
||||
}
|
||||
|
||||
/* =========================================================
|
||||
* DARK MODE — Phase 5 AKTIV.
|
||||
* Werte aus dev/frontend/tailwind_v3/User Dashboard presseportale Dark.html.
|
||||
* Aktivierung über `.dark` (FluxUI Appearance-Switcher setzt das auf <html>).
|
||||
*
|
||||
* Konventionen:
|
||||
* - Gleiche Token-Namen wie Light Mode (Single Source of Truth).
|
||||
* - `--color-accent-warm`, `--color-panel-dark*` bleiben KONSTANT
|
||||
* (siehe Begründungen oben im Light-Block).
|
||||
* - Hub-Frontend (Landing + Auth) lädt KEIN `@fluxAppearance` und
|
||||
* bleibt damit immer Light. Nur Portal-Seiten schalten um.
|
||||
* ========================================================= */
|
||||
.dark {
|
||||
/* Surfaces */
|
||||
--color-bg: #0e1218;
|
||||
--color-bg-elev: #14181f;
|
||||
--color-bg-rule: #2a3142;
|
||||
--color-bg-rule-2: #232838;
|
||||
--color-bg-rule-strong: #ece9e0;
|
||||
--color-bg-card: #181d27;
|
||||
--color-bg-card-warm: #1f1a12;
|
||||
|
||||
/* Hub-Blau (im Dark Mode HELLER für Lesbarkeit auf dunklem Bg) */
|
||||
--color-hub: #5a78c2;
|
||||
--color-hub-2: #6d8ad3;
|
||||
--color-hub-3: #4a65a8;
|
||||
--color-hub-soft: #1f2a47;
|
||||
--color-hub-soft-2: #2c3a5d;
|
||||
--color-hub-line: #7b8fbf;
|
||||
|
||||
/* Bernstein — heller Akzent (warm-Token bleibt konstant) */
|
||||
--color-accent: #d9a560;
|
||||
--color-accent-deep: #b07a3a;
|
||||
--color-accent-soft: #2a2418;
|
||||
/* --color-accent-warm: konstant #b07a3a (aus Light geerbt) */
|
||||
|
||||
/* Ink */
|
||||
--color-ink: #ece9e0;
|
||||
--color-ink-2: #c9c5b8;
|
||||
--color-ink-3: #8e8b82;
|
||||
--color-ink-4: #5d5c57;
|
||||
|
||||
/* Brand-Aliase */
|
||||
--color-brand: #5a78c2;
|
||||
--color-brand-deep: #4a65a8;
|
||||
--color-brand-soft: #1f2a47;
|
||||
|
||||
/* Status */
|
||||
--color-ok: #4dc076;
|
||||
--color-ok-soft: #1a2d22;
|
||||
--color-warn: #d9a560;
|
||||
--color-warn-soft: #2d2418;
|
||||
--color-err: #e07664;
|
||||
--color-err-soft: #2e1715;
|
||||
--color-gain: #4dc076;
|
||||
--color-gain-deep: #3aa060;
|
||||
--color-loss: #e07664;
|
||||
|
||||
/* Bridge-Dots heller für Dark-Bg */
|
||||
--color-bridge-presseecho: #4da37a;
|
||||
--color-bridge-businessportal: #e36340;
|
||||
|
||||
/* Editorial */
|
||||
--color-card-warm-cat: #8e8b82;
|
||||
--color-card-warm-title: #ece9e0;
|
||||
--color-feature-line: #2c3a5d;
|
||||
--color-feature-dot: #2a3142;
|
||||
|
||||
/* Schatten — im Dark Mode neutral schwarz statt hub-blau-warm */
|
||||
--shadow-soft: 0 1px 0 rgba(0, 0, 0, 0.4);
|
||||
--shadow-card: 0 1px 2px 0 rgba(0, 0, 0, 0.4);
|
||||
--shadow-card-hover: 0 4px 12px -2px rgba(0, 0, 0, 0.55);
|
||||
--shadow-auth:
|
||||
0 1px 0 rgba(0, 0, 0, 0.5),
|
||||
0 20px 50px -32px rgba(0, 0, 0, 0.7);
|
||||
|
||||
/* color-scheme-Hint für native Form-Controls (Scrollbars, Inputs) */
|
||||
color-scheme: dark;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue