-
+
-
{title}
+
{title}
{body}
-
+
{backToDashboard}
diff --git a/apps/web/src/components/proxmox/status-styles.ts b/apps/web/src/components/proxmox/status-styles.ts
index 78709c3..c83a371 100644
--- a/apps/web/src/components/proxmox/status-styles.ts
+++ b/apps/web/src/components/proxmox/status-styles.ts
@@ -7,7 +7,8 @@ import type { MeterLevel, ServerHealth } from './proxmox-status';
*
* `fill` = Flaeche (Leiste, Punkt, Balken), `pill` = Statuspille (12 %
* Flaeche + Textvariante), `text` = Schrift in Statusfarbe, `shadow` =
- * zweischichtiger Schatten, der untere im Statuston getoent.
+ * ruhender Fluent-Schatten (Design „Mosaik“: keine im Statuston
+ * leuchtenden Schatten mehr — der Zustand steht in Leiste und Pille).
*
* Seit quick-260924-i8v gemeinsam fuer Modulseite und Dashboard-Kachel.
*/
@@ -19,32 +20,31 @@ export const HEALTH_STYLE: Record<
fill: 'bg-status-ok',
pill: 'bg-status-ok/12 text-status-ok-fg',
text: 'text-status-ok-fg',
- shadow: 'shadow-[0_1px_2px_oklch(0_0_0/0.06),0_12px_28px_-14px_var(--status-ok)]',
+ shadow: 'shadow-sm',
},
warn: {
fill: 'bg-status-warn',
pill: 'bg-status-warn/12 text-status-warn-fg',
text: 'text-status-warn-fg',
- shadow: 'shadow-[0_1px_2px_oklch(0_0_0/0.06),0_12px_28px_-14px_var(--status-warn)]',
+ shadow: 'shadow-sm',
},
down: {
fill: 'bg-status-down',
pill: 'bg-status-down/12 text-status-down-fg',
text: 'text-status-down-fg',
- shadow: 'shadow-[0_1px_2px_oklch(0_0_0/0.06),0_12px_28px_-14px_var(--status-down)]',
+ shadow: 'shadow-sm',
},
idle: {
fill: 'bg-status-idle',
pill: 'bg-status-idle/12 text-status-idle-fg',
text: 'text-status-idle-fg',
- shadow: 'shadow-[0_1px_2px_oklch(0_0_0/0.06),0_12px_28px_-14px_var(--status-idle)]',
+ shadow: 'shadow-sm',
},
- // Kein farbiger Schatten: ein verwaister Server soll nicht „leuchten“.
orphan: {
fill: 'bg-status-orphan',
pill: 'bg-status-orphan/12 text-status-orphan-fg',
text: 'text-status-orphan-fg',
- shadow: 'shadow-[0_1px_2px_oklch(0_0_0/0.04)]',
+ shadow: 'shadow-sm',
},
};
@@ -64,4 +64,4 @@ export const METER_TEXT: Record
= {
};
/** Eingelassenes Messfeld („Well“). */
-export const WELL = 'rounded-lg bg-well shadow-[inset_0_1px_2px_oklch(0_0_0/0.06)]';
+export const WELL = 'rounded-lg bg-well';
diff --git a/apps/web/src/components/release-notice/release-notice-dialog.tsx b/apps/web/src/components/release-notice/release-notice-dialog.tsx
index d1b1dc9..74af18a 100644
--- a/apps/web/src/components/release-notice/release-notice-dialog.tsx
+++ b/apps/web/src/components/release-notice/release-notice-dialog.tsx
@@ -127,7 +127,7 @@ export function ReleaseNoticeDialog({ notice, onClose }: ReleaseNoticeDialogProp
role="dialog"
aria-modal="true"
aria-labelledby={titleId}
- className="relative z-50 mx-4 flex max-h-[85vh] w-full max-w-lg flex-col rounded-lg border border-border bg-card shadow-xl"
+ className="relative z-50 mx-4 flex max-h-[85vh] w-full max-w-lg flex-col rounded-lg bg-card dark:border dark:border-border shadow-xl"
>
{t('confirm')}
diff --git a/apps/web/src/components/settings/account-settings-form.tsx b/apps/web/src/components/settings/account-settings-form.tsx
index 277614b..674e8c5 100644
--- a/apps/web/src/components/settings/account-settings-form.tsx
+++ b/apps/web/src/components/settings/account-settings-form.tsx
@@ -197,7 +197,7 @@ export function AccountSettingsForm() {
disabled={isAvatarPending}
onChange={handleAvatarUpload}
/>
-
+
{isAvatarPending ? '...' : t('account.uploadCta')}
@@ -281,7 +281,7 @@ export function AccountSettingsForm() {
type="button"
onClick={handleSaveAccentColor}
disabled={isAccentPending || !isHexValid}
- className="inline-flex items-center justify-center rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground hover:opacity-90 transition-opacity disabled:opacity-50"
+ className="btn btn-primary"
>
{isAccentPending ? '...' : t('account.accentColorSave')}
@@ -365,7 +365,7 @@ export function AccountSettingsForm() {