From 8d75f7346eaf8cf99b2e9eea7661d6388a2a2f96 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 5 Oct 2026 10:16:50 +0000 Subject: [PATCH] Design: Rest aus P1 - Archivieren als roter Link, Planboard-Tokens und Scroll-Container, !important entfernt, Invalid-Ring im Fokus, Schublade nicht tabbar, Dialog-Fokus, Protokoll ohne Ueberlauf Co-Authored-By: Claude Sonnet 5.5 --- src/components/customer/CustomerViewLog.jsx | 6 +- src/pages/AdminPage.css | 25 ++-- src/pages/PlanboardPage.jsx | 137 ++++++++++---------- src/pages/ProjectsPage.jsx | 3 +- src/styles/admin-areas.css | 4 +- src/styles/global.css | 14 +- 6 files changed, 98 insertions(+), 91 deletions(-) diff --git a/src/components/customer/CustomerViewLog.jsx b/src/components/customer/CustomerViewLog.jsx index 6020c02..58aad33 100644 --- a/src/components/customer/CustomerViewLog.jsx +++ b/src/components/customer/CustomerViewLog.jsx @@ -42,9 +42,9 @@ export default function CustomerViewLog({ customerId }) {
{entries.map((e) => (
- {formatViewLogTime(e.at)} - {e.staffName || '–'} -
+ {formatViewLogTime(e.at)} + {e.staffName || '–'} +
{viewLogLabel(e.action)}
{e.detail &&
{e.detail}
}
diff --git a/src/pages/AdminPage.css b/src/pages/AdminPage.css index 464d57c..7366ed4 100644 --- a/src/pages/AdminPage.css +++ b/src/pages/AdminPage.css @@ -277,29 +277,30 @@ gap: 6px; } -.admin-status, -.admin-role { - display: inline-flex !important; +/* Tabellenzellen: .admin-table td > span (0,1,2) setzt display/Farbe/Schrift; die Selektoren hier sind spezifischer (0,2,1) */ +.admin-table td > .admin-status, +.admin-table td > .admin-role { + display: inline-flex; width: fit-content; align-items: center; padding: 3px 7px; border: 1px solid var(--admin-line-strong); border-radius: 4px; - color: var(--text-muted) !important; - font-size: 11px !important; + color: var(--text-muted); + font-size: 11px; font-weight: 700; } -.admin-status.active, -.admin-role.admin { - border-color: rgba(16, 185, 129, 0.45); - color: #6ee7b7 !important; +.admin-table td > .admin-status.active, +.admin-table td > .admin-role.admin { + border-color: var(--green-fg); + color: var(--green-fg); } -.admin-shortcode { - color: var(--text) !important; +.admin-table td > .admin-shortcode { + color: var(--text); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; - font-size: 12px !important; + font-size: 12px; letter-spacing: 0.04em; } diff --git a/src/pages/PlanboardPage.jsx b/src/pages/PlanboardPage.jsx index 2e333b5..dfe4293 100644 --- a/src/pages/PlanboardPage.jsx +++ b/src/pages/PlanboardPage.jsx @@ -11,10 +11,11 @@ import { groupAppointmentsByDay, countInRange, dayKey } from '../lib/planboard' /* Termine haengen an den Tickets (startDate/startTime/endTime/assignedTo); die Aufbereitung steckt in src/lib/planboard.js. */ +// Farben nur ueber Tokens (P3 baut die Seite um) const TYPE_COLORS = { - akquise: { bg: 'rgba(198,113,57,0.16)', fg: '#c67139' }, - webpage: { bg: 'rgba(122,138,94,0.18)', fg: '#7a8a5e' }, - project: { bg: 'rgba(122,138,94,0.18)', fg: '#7a8a5e' }, + akquise: { bg: 'var(--appt-akquise)', fg: 'var(--orange-fg)' }, + webpage: { bg: 'var(--bg-hover)', fg: 'var(--text-2)' }, + project: { bg: 'var(--bg-hover)', fg: 'var(--text-2)' }, } export default function PlanboardPage() { @@ -47,72 +48,74 @@ export default function PlanboardPage() { } /> -
- {weekDays.map((day) => { - const entries = byDay[dayKey(day)] || [] - const today = isSameDay(day, new Date()) - return ( - -
- {format(day, 'EEEE', { locale: de })} - {format(day, 'dd.MM')} -
+
+
+ {weekDays.map((day) => { + const entries = byDay[dayKey(day)] || [] + const today = isSameDay(day, new Date()) + return ( + +
+ {format(day, 'EEEE', { locale: de })} + {format(day, 'dd.MM')} +
-
- {entries.length === 0 && ( -

Keine Termine

- )} +
+ {entries.length === 0 && ( +

Keine Termine

+ )} - {entries.map((entry) => { - const color = TYPE_COLORS[String(entry.type).toLowerCase()] - || { bg: 'rgba(127,127,127,0.10)', fg: 'var(--border)' } - return ( - - ) - })} -
- - ) - })} + {entries.map((entry) => { + const color = TYPE_COLORS[String(entry.type).toLowerCase()] + || { bg: 'var(--bg-subtle)', fg: 'var(--line-strong)' } + return ( + + ) + })} +
+
+ ) + })} +
) diff --git a/src/pages/ProjectsPage.jsx b/src/pages/ProjectsPage.jsx index 57c1b94..50d92a8 100644 --- a/src/pages/ProjectsPage.jsx +++ b/src/pages/ProjectsPage.jsx @@ -743,8 +743,7 @@ export default function ProjectsPage() {