// DataLoop landing — root app with Tweaks-controlled direction + accent + density + type. const { useState, useEffect } = React; // Curated accent palettes — keyed by hex (TweakColor uses hex as value) const ACCENT_INK = { "#ff5b2e": "#1a0a04", "#c9f24a": "#0e1602", "#38e8d6": "#022119", "#ff4dc2": "#1f0414", }; const ACCENT_NAMES = { "#ff5b2e": "коралл", "#c9f24a": "лайм", "#38e8d6": "циан", "#ff4dc2": "маджента", }; const ACCENT_HEXES = Object.keys(ACCENT_INK); const DEFAULTS = /*EDITMODE-BEGIN*/{ "direction": "a", "accent": "#ff5b2e", "density": "regular", "type": "display" }/*EDITMODE-END*/; function App() { const [t, setTweak] = useTweaks(DEFAULTS); useEffect(() => { const ink = ACCENT_INK[t.accent] || "#1a0a04"; document.documentElement.style.setProperty("--accent", t.accent); document.documentElement.style.setProperty("--accent-ink", ink); }, [t.accent]); useEffect(() => { const dir = t.direction === "b" ? "dir-b" : "dir-a"; const dens = `dens-${t.density || "regular"}`; const typ = `type-${t.type || "display"}`; document.body.className = `${dir} ${dens} ${typ}`; }, [t.direction, t.density, t.type]); return ( <>