/* ===========================================================
   Düdofamily – Design-Tokens
   EINZIGE Stelle für Farben, Abstände, Radien, Schatten, Schrift.
   Alles andere (style.css, components.css, app.css) nutzt nur var(--…).
   Anpassen: Werte hier ändern – oder im Browser per data-theme / data-size.
   =========================================================== */

:root {
	/* Marke (Anregung: duedotreffen.com) */
	--accent: #a5655f;          /* Flächen: Buttons, Badges, Icons */
	--accent-strong: #86504b;   /* Text/Links auf hellem Grund (≥ 5,5:1) */
	--accent-hover: #86504b;
	--accent-light: #b78480;    /* nur dekorativ (Linien, Ränder) – nicht für Text */
	--accent-soft: #f3e7e5;     /* zarte Akzentflächen (Hover, Chips) */
	--on-accent: #ffffff;

	/* Flächen & Text */
	--bg: #f4f3f3;
	--surface: #ffffff;
	--surface-2: #faf8f7;
	--cream: #faf6f0;
	--hero-text: #faf6f0;       /* Text auf Fotos – bleibt auch im Dunkelmodus hell */
	--text: #5c5c5c;            /* Fließtext (≥ 6:1 auf --bg) */
	--text-muted: #6b6b6b;      /* Nebeninfos (≥ 4,9:1 auf --bg) */
	--heading: #3d3534;
	--line: #e6e1df;
	--line-strong: #d6cfcc;
	--dark: #241614;
	--on-dark: #f4ece8;
	--on-dark-muted: #cbbcb7;

	/* Status */
	--ok: #2c6e36;       --ok-soft: #e7f2e7;     --ok-line: #9fc99f;
	--warn: #8a5a12;     --warn-soft: #fdf3e3;   --warn-line: #e2c186;
	--danger: #b3312c;   --danger-soft: #fbeaea; --danger-line: #d9a0a0;
	--info: #2e5670;     --info-soft: #e8f0f5;   --info-line: #a9c4d6;
	--dot: #e23b3b;

	/* Schrift */
	--font-body: "Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
	--font-script: "Kaushan Script", cursive;
	--fs-xs: 0.8rem;    /* Untergrenze – nichts kleiner */
	--fs-sm: 0.9rem;
	--fs-md: 1rem;
	--fs-lg: 1.15rem;
	--fs-xl: 1.5rem;
	--fs-2xl: 2rem;
	--lh: 1.6;

	/* Abstände (4er-Raster) */
	--sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px; --sp-5: 24px; --sp-6: 32px; --sp-7: 48px;

	/* Formen */
	--r-sm: 8px; --r-md: 12px; --r-lg: 18px; --r-pill: 999px;
	--shadow-1: 0 1px 2px rgba(36, 22, 20, .06), 0 1px 3px rgba(36, 22, 20, .08);
	--shadow-2: 0 4px 14px rgba(36, 22, 20, .10);
	--shadow-3: 0 12px 40px rgba(36, 22, 20, .22);

	/* Bedienung */
	--tap: 44px;          /* Mindest-Tippfläche */
	--btn-h: 2.75rem;     /* einheitliche Buttonhöhe (= 44px) */
	--appbar-h: 64px;
	--tabbar-h: 64px;
	--ease: cubic-bezier(.2, .8, .2, 1);

	/* Altlast-Brücke: bisher verwendete Variable */
	--duedo-btn-h: var(--btn-h);

	color-scheme: light;
}

/* Größere Schrift (Einstellung „Groß" im Ich-Menü) */
:root[data-size="gross"] { font-size: 112.5%; }

/* Dunkles Farbschema – gilt bei data-theme="dark" oder Auto + System dunkel */
:root[data-theme="dark"] {
	--accent: #c98a83; --accent-strong: #e3aca5; --accent-hover: #d99a93; --accent-light: #8f5f5a;
	--accent-soft: #3a2926; --on-accent: #1c1413;
	--bg: #171211; --surface: #221b1a; --surface-2: #2a2221; --cream: #2a2221;
	--text: #d3cbc8; --text-muted: #aba19e; --heading: #f3ece9;
	--line: #3a302e; --line-strong: #4a3e3b; --dark: #0f0b0a; --on-dark: #f4ece8; --on-dark-muted: #bfb0ab;
	--ok: #86cf92; --ok-soft: #1f3322; --ok-line: #365c3b;
	--warn: #e7b566; --warn-soft: #3a2d17; --warn-line: #5f4a24;
	--danger: #f0908a; --danger-soft: #3d1f1d; --danger-line: #6b3431;
	--info: #9cc3de; --info-soft: #1d2c36; --info-line: #35505f;
	--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);
	--shadow-2: 0 4px 14px rgba(0, 0, 0, .45);
	--shadow-3: 0 12px 40px rgba(0, 0, 0, .6);
	color-scheme: dark;

	/* WordPress-Presets (theme.json) mitziehen */
	--wp--preset--color--accent: var(--accent);
	--wp--preset--color--accent-light: var(--accent-light);
	--wp--preset--color--accent-dark: var(--accent-strong);
	--wp--preset--color--base: var(--bg);
	--wp--preset--color--surface: var(--surface);
	--wp--preset--color--text: var(--text);
	--wp--preset--color--heading: var(--heading);
	/* cream/dark bleiben unverändert: sie färben Text/Flächen AUF Fotos (Hero) */
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
		scroll-behavior: auto !important;
	}
}
