/* FreeSize — app shell + mount */ const TWEAK_DEFAULTS = /*EDITMODE-BEGIN*/{ "dark": false, "accent": "oklch(0.575 0.108 220)", "density": "regular", "showCounts": true }/*EDITMODE-END*/; function deriveAccent(c) { return { "--accent": c, "--accent-2": `color-mix(in oklch, ${c} 84%, black)`, "--accent-soft": `color-mix(in oklch, ${c} 14%, var(--surface))`, "--accent-soft-2": `color-mix(in oklch, ${c} 26%, var(--surface))`, "--accent-border": `color-mix(in oklch, ${c} 46%, var(--surface))`, }; } function App() { const [t, setTweak] = useTweaks(TWEAK_DEFAULTS); const [view, setView] = React.useState("scan"); React.useEffect(() => { document.documentElement.setAttribute("data-theme", t.dark ? "dark" : "light"); }, [t.dark]); const accentVars = deriveAccent(t.accent); const nav = { view, setView }; return (